Unix - 移动包含文件与名称匹配的文件夹

时间:2016-07-04 21:22:48

标签: macos unix

根据每个文件夹中文件的文件名,我想知道如何将多个文件夹移动到另一个文件夹。 我的意思是,我们假设我有大量的文件夹,每个文件夹的名称以'folder *'开头,每个文件夹包含3个文件。具体来说,一个文件包含一个字符串,例如可能是' -100 ',' -200 '或' -300 '。

我想根据此字符串移动包含文件的文件夹,并将它们放在名为“string”的文件夹中。例如,要将包含包含字符串' -100 '的文件的每个文件夹放入文件夹'FOLDER1',我尝试类似:

查找文件夹* -name' 100 ' - exec mv {}文件夹* FOLDER1

但它返回 -bash:/ usr / bin / find:参数列表太长了。

我怎样才能传递较少的参数来找到每一步,所以我不明白。

提前感谢。

最佳。

1 个答案:

答案 0 :(得分:0)

使用您的示例,并在包含所有文件夹的最顶层文件夹中运行,我相信您需要的是:

grep -rlw folder* -e "-100" | xargs -I % mv % FOLDER1