ディレクトリ/tmp/log
のファイルからデータを抽出する必要があります。 私は単一のファイルから問題を抽出していません。複数のファイルからデータ行を読み取る方法
#!/bin/bash
while read line;
do
echo $line
done < /tmp/log/file1
私は複数のファイル/tmp/log/*
でそれを試してみたいが、それは誤りambiguous redirect
を返しました。 どうすればいいですか?
ディレクトリ/tmp/log
のファイルからデータを抽出する必要があります。 私は単一のファイルから問題を抽出していません。複数のファイルからデータ行を読み取る方法
#!/bin/bash
while read line;
do
echo $line
done < /tmp/log/file1
私は複数のファイル/tmp/log/*
でそれを試してみたいが、それは誤りambiguous redirect
を返しました。 どうすればいいですか?
あなたはforループ内のファイルを読むことができる:
for file in /tmp/log/*; do
while read -r line; do
echo "$line"
done < "$file"
done
戦略をただでファイル1のそれぞれの処理の面倒をforループを使用してwhileループをラップされます時間。
いけない正確にあなたが必要WAHT .. は、おそらくあなたは、この探している知っている:
cat /tmp/log/*
が、これは何が必要ですか?次のように
for line in `cat /tmp/log/*`
do
echo $line
done
私は作業をしますが、データを行単位で処理したいです。 – conandor
この場合、プロセス置換を使用できます: 'while read line;行う ...; done <<(cat/tmp/log/*) ' –
これは私が探しているものです。おかげでjcollado! – conandor
forループのwhileループへのforループ供給ファイルです。 – kartik