scp 复制出现错误“目标不明确”

scp 复制出现错误“目标不明确”

我尝试将文件从 Linux(ubuntu)机器复制到安装在 Mac 上的外部硬盘驱动器,但收到一条错误消息:

scp: ambiguous target

我的做法是,在 Mac 上,通过 ssh 连接到文件所在的 Linux 机器。然后使用以下命令:

scp fileToCopy myMacUser@myMacMachine:/Volumes/MyExternalDrive/targetDirectory

我做错了什么? 在这种情况下应该使用什么命令?

答案1

如果路径中有空格,则必须使用双反斜杠\\并将整个路径括在引号中来转义字符:

scp myfile.txt [email protected]:"/file\\ path\\ with\\ spaces/myfile.txt"

答案2

我发现两组引号对我有用,分别围绕目标位置。双引号在外面,单引号在双引号里面。例如:

scp "my local file.txt" [email protected]:"'/folder/my spacey folder name/'"

外面的引号代表本地 shell,里面的引号代表远程 shell。感谢 @mik 在评论中提出的建议。

答案3

您需要加上引号,以免空格被误解。scp file Server:/folder\ location/您应该这样做,而不是这样做scp file "Server:/folder\ location/"

相关内容