すべてのフォルダにアクセスしてコマンドを実行するLinuxスクリプト

すべてのフォルダにアクセスしてコマンドを実行するLinuxスクリプト

こんにちは。ディレクトリ内に複数のフォルダがあります。それらのすべてでこのコマンドを実行したいと思います。

wc -l * > 合計

スクリプトでこれを行う方法はありますか?

答え1

はい:

find /YOUR/ROOT/DIR -type f -exec wc -l '{}' \; > total

各 (サブ) ディレクトリにファイルが必要な場合はtotal、次の呼び出しをループする必要があります。

find /YOUR/ROOT/DIR -type d | while read
do
   # Change '/' to '_' in dir name
   NAME=$(echo "$REPLY" | sed -e 's#/#_#g')
   wc -l "$REPLY" > "total.$NAME"
done

それが役に立てば幸い。

関連情報