
いくつかのファイルを探して移動しようとしています/ホーム/ユーザー/fol1に/ホーム/ユーザー/fol2一般的に
は
find . -type f -name "abc*" -exec mv -t "/path/to/foo/bar" {} +
しかし、これはすでに存在する同じ名前のファイルを上書きします/path/to/foo/bar
すでに存在するファイルをスキップしたいです。
ループが必要な場合は、シェル上のプレーン出力またはログ ファイルへの出力も必要です。何かアイデアはあり
ますか?
答え1
次のオプションを使用できますn
:
find . -type f -name "abc*" -exec mv -nt "/path/to/foo/bar" "{}" +
からman mv
:
-n, --no-clobber
do not overwrite an existing file
答え2
私は Mac ターミナルを使用していますが、次のコマンドで良い結果が得られます:
FIle_Origin を検索 -type f -name "File_Name" -exec mv {} File_destination/ ;