たとえば、sfvファイルへのパスを含むcrcリストを提供するスクリプトをどのように書くことができますか?これをPythonでコーディングできますが、おそらくシェルの方が簡単な方法があります。
これまで私は以下を持っています:
find . -type f -exec crc32 {} \; > chksum.txt
しかし、これにはパスは含まれません。
サンプル出力は次のとおりです。
file_one.zip c45ad668
file_two.zip 7903b8e6
file_three.zip e99a65fb
答え1
-exec
オプション内で個々のファイル名を繰り返し、必要な操作を実行するサブシェルを実行できます。
find . -type f -exec sh -c '
for file; do
echo "$file" "$(crc32 "$file")"
done' sh {} +
find
内部 for ループは、位置引数の長いリストから名前のリストを取得します。これはfor file; do
コマンド入力リストの略語です。for file in "$@"; do
$@
find