我想要将特定文件夹复制到另一个文件夹中,但我没有确切的名称,例如
/volume1/User/save/01/**-**** ?/GROUPES **-****/
**-****
是一个每次都会变化但格式始终相同的数字参考(例如:75-1234)并且?
是单词(Lion Tiger Shark)--> /75-1234 Lion Tiger/
Shark)
我想复制/GROUPES **-****/
到/volume1/User/01/
我最后一次尝试是
find /volume1/User/save/01/**-**** ?/ -iname "GROUPES **-*****" -exec cp -r /volume1/User/save/01/
而且它(显然?)不起作用。
答案1
正如@Jonas 指出的,您需要 a?
来匹配一个字符,并需要 a*
来匹配多个字符。空格字符需要用 转义\
。
将第一个模式**-**** ?
更改为??-????\ *
并转义空格字符后,命令应为:
cp -r /volume1/User/save/01/??-????\ */GROUPES\ ??-????/ /volume1/User/save/01/
答案2
复制执行以下操作:
cp SOURCE DESTINATION
我们想要将目录(意味着我们使用 -r 或递归)从组复制到另一个文件夹,因此我们这样做:(您必须使用 ? 作为通配符,而不是 *,因为星号代表多个字符,因此将允许带有星号的所有内容)
cp -r /full/path/to/GROUPES' '??-????/ /volume1/User/save/01/
您不需要为目标目录提供通配符,因为您要复制到 01 文件夹内,并且不会更改名称