findおよびmv統合コマンドのログを取得するには?

findおよびmv統合コマンドのログを取得するには?

私は特定のファイルを見つけて別のフォルダに移動するためにスクリプトでこのコマンドを使用していますが、移動したファイルのログを生成する必要があります。

find $1* -prune -name "*.$2" -mtime +$3 -exec mv {} $4 \;

ログを生成するには、コマンドに何を追加する必要がありますか?

ベストアンサー1

注文、

find $1* -prune -name "*.$2" -mtime +$3 -exec mv {} $4 \;

まず、次のように書く必要があります。

find "$1"* -prune -name "*.$2" -mtime +"$3" -exec mv {} "$4" \;

そうしないと、名前にスペースが含まれているディレクトリやファイルには使用できなくなります。

このコマンドで実際に移動した項目のパス名を出力するには、最後の項目を追加するだけですmv-print

find "$1"* -prune -name "*.$2" -mtime +"$3" -exec mv {} "$4" \; -print

これにより、指定された宛先に正常に移動されたすべてのファイル(またはディレクトリ)のパス名が出力されます"$4"

おすすめ記事