次のような内容を含むテキスト ファイルがあります。
abc 123, comma
the quick brown fox
jumped over the lazy dog
comma, comma
スクリプトを書きました
for i in `cat file`
do
echo $i
done
何らかの理由で、スクリプトの出力はファイルを 1 行ずつ出力せず、コンマと改行で区切ります。cat または "for blah in cat xyz
" がこれを行うのはなぜですか? どうすればこれを行わないようにできますか? 私は私が使用できることを知っています
while read line
do
blah balh blah
done < file
しかし、UNIXコマンドの理解を深めるために、catまたは「for blah in」がこれを行っている理由を知りたいです。Cat の man ページは役に立ちませんでした。また、bash マニュアルを調べたりループしたりしても、答えは得られませんでした ( http://www.gnu.org/software/bash/manual/bashref.html )。よろしくお願いします。