xargs cp如何使用星号?

我正在尝试使用保留文件夹结构(使用--parents)通过掩码复制文件,由于cp -r --parents错误,我无法直接使用rsyncargument list too long

ls folder1/folder2/ | head | xargs -I {} cp -r --parents folder1/folder2/{}/neutral* neutral_data/

但是似乎星号符号在这里不能按预期工作,相反,我遇到了一些错误,例如:

cp: cannot stat 'folder1/folder2/folder3/neutral*': No such file or directory

在这种情况下或使用其他任何方法来解决此问题的正确方法是使用asterix符号?

更新

基于此答案https://unix.stackexchange.com/a/5247/221416,我尝试了

ls folder1/folder2/ | head | xargs -I {} sh -c cp -r --parents folder1/folder2/{}/neutral* neutral_data/

但是它给出了错误:

cp: missing file operand
l5600666 回答:xargs cp如何使用星号?

这是一个解决方案:

ls folder1/folder2/ | xargs -I {} bash -c "cp -r --parents folder1/folder2/{}/neutral* neutral_data/"
本文链接:https://www.f2er.com/2327795.html

大家都在问