我有以下文件夹结构:
>Folder1
>>date1
>>>Empty
1.jpg
2.jpg
>>>Occupied
x.jpg
y.jpg
>>date2
>>>Empty
1.jpg
2.jpg
>>>Occupied
x.jpg
y.jpg
我需要复制所有文件
到另一个单个文件夹
在Occupied文件夹中的另一个文件夹
我尝试了$ cp Folder1/**/Empty/*.jpg ~/destination_folder/
,但它没有给我错误:“参数列表太长”。我该怎么做?
答案 0 :(得分:0)
您可以使用find
:
find Folder1 -wholename '*Empty*.jpg' -exec cp -v {} ~/destination_folder +
+
选项末尾的-exec
会根据需要多次调用cp
,以避免参数列表太长错误,但会少一些尽可能。这意味着它将始终使用最大数量的参数调用cp
。
如果您的find
不支持+
语法,您仍然可以使用:
find Folder1 -wholename '*Empty*.jpg' -exec cp -v {} ~/destination_folder \;
每个源文件将调用cp
一次。虽然这仍然有效,但需要更多时间。