あるディレクトリ内でファイル一覧に対して同じ処理をしたい時のループの書き方
for file in `\find . -maxdepth 1 -type f`; do
# TODO
done
\find . -maxdepth 1 -type f
カレントディレクトリの’ファイル’のみを取得している
\ls -F | grep -v /
でもファイルを絞り込めるが実行可能ファイルに「*」がついたりする
#例
中身を結合してファイルに出力
for file in `\find . -maxdepth 1 -type f`; do
cat $file >> out
done
再帰的にtxt のみファイルに出力して削除
for file in `\find . -name '*.txt'`; do
cat $file >> out
rm $file
done
png のみ バックアップ
for file in `\find . -maxdepth 1 -name '*.png'`; do
cp $file $file.tmp
done