シェルの2つの別々のディレクトリにあるファイルの違いを再帰的に調べようとしています。注: - 両方のディレクトリが同一であるだけルート名は、私が「差分ROOT_A/A.md5 ROOT_B/A.md5」したい上記のすべてのための私のスクリプトファイルに再帰的に示した図でシェル内のファイルの違いを再帰的にチェック
異なっていますファイルをルートディレクトリに保存します。
for filename in ROOT_A/*.md5; do
diff ($filename | cut -d '/' -f 2) (ROOT_B/$filename) >> logfile.txt done
ただし、これは機能しません。誰かがこれで私を助けることができますか?おかげ
試したコマンドはどこですか?問題がどこにあるかを確認するためのコードはありません。 –
私のコードをスニペットで更新しました。ありがとう –
Bashでは、 'cut'の代わりに、組み込み関数を使って、接頭辞を削除することで変数の値を変更した方がよいでしょう。 - $ {filename ## * /}"最後の '/'を含めます。もちろん、あなたは 'diff $(...)'( '$'に注意してください)と言っていました。 '(ROOT_B/$ filename)'は、あなたが信じていると思われるものを意味するものではありません。 – AlexP