MACOS:使用 * 查找所有具有特定扩展名的文件时,cp 命令由于引号而失败?

问题描述 投票:0回答:1

以下命令:

cp "/Users/my.name/Documents/GitHub/Folder/*.dylib" "/Users/my.name/Documents/GitHub/OtherFolder"

抛出以下内容:

没有这样的文件或目录

以下命令:

cp "/Users/my.name/Documents/GitHub/Folder/theFile.dylib" "/Users/my.name/Documents/GitHub/OtherFolder"

复制文件。

以下命令:

cd "/Users/my.name/Documents/GitHub/Folder/"
cp *.dylib "/Users/my.name/Documents/GitHub/OtherFolder"

这让我相信这是由于引号的存在

"..."
。使用
'...'
时也一样。这是为什么 ?如果路径中有空格怎么办?

macos cp
1个回答
0
投票

在unix shell(bash、zsh等)中,您可以引用字符串的任何部分(使用双引号或单引号),而不必引用整个字符串。例如

bll-g7:bll$ mkdir -p $HOME/'dq"'/"sq'"/stuff
bll-g7:bll$ ls -ld $HOME/'dq"'/"sq'"/stuff
drwxr-xr-x 2 bll bll 4096 Jun 10 08:33 /home/bll/dq"/sq'/stuff/

如果有通配符,您可以这样做:

cp "/Users/my.name/Documents/folder with space/lib/"*.dylib \
   $HOME/somewhere/
© www.soinside.com 2019 - 2024. All rights reserved.