将文件夹从未知位置移动到服务器上的不同位置

时间:2015-10-28 18:45:09

标签: linux bash shell terminal sh

我正在尝试将文件夹及其内容移动到服务器上的其他位置。 文件夹可以在任何地方,但我必须将其移动到特定位置。 到目前为止,我已尝试过类似的东西,但它无法正常工作

find / -name 'test_folder' -exec mv 'test_folder' /Users/michael/Downloads/here/. {} +

任何建议,我做错了什么?

.sh中该命令的变体是什么?

1 个答案:

答案 0 :(得分:2)

您必须为mv提供找到的文件夹的全名,而不仅仅是直接名称:/some/other/dir/test_folder,而不是test_folder。使用

find / -name test_folder -exec mv '{}' /Users/michael/Downloads/here +

更新:+形式的-exec似乎要求{}是该命令的最终参数,与;版本不同。

# Less efficient, as `mv` is called for every found directory
find / -name test_folder -exec mv '{}' /Users/michael/Downloads/here \;

# More complicated, but less overhead
find / -name test_folder -exec sh -c 'mv "$@" /Users/michael/Downloads/here' {} +
相关问题