我正在尝试从中查找并移动一些文件/home/用户/fol1到/home/用户/fol2。
一般来说我会使用
find . -type f -name "abc*" -exec mv -t "/path/to/foo/bar" {} +
但这会覆盖已存在于中的同名文件/路径/到/foo/bar。
我希望它跳过那些已经存在的文件。
如果这需要一个循环,我还需要一个输出,无论是 shell 上的纯输出还是日志文件中的输出。
有任何想法吗?
答案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/ ;