scp 与 BindAddress

scp 与 BindAddress

如果我在这里使用了一些术语错误,请原谅,我并不是网络专家。

我的本地网络上有一个服务器,但已连接到 VPN,为了通过 Mac 访问本地服务器ssh,我需要使用“绑定地址”选项来指定我要从我的 LAN IP 而不是我的 VPN IP 发起请求(例如,如果我的本地 IP 是 10.0.0.123,我将使用它ssh -b 10.0.0.123 10.0.0.202来访问 10.0.0.202 的服务器)。

这很好用。

但我无法开始scp工作。根据手册页和互联网上的大量帖子,我应该能够使用scp -o BindAddress=10.0.0.123 10.0.0.202:someFile.txt .,但是当我这样做时,我得到了以下输出:

cp: –o: No such file or directory
cp: BindAddress=10.0.0.206: No such file or directory

...这是怎么回事?看起来参数cp由于某种原因被传递得很长,而不是真正用作scp参数。在 Mac 上还有其他方法吗?或者有没有其他方法可以通过 ssh 传输文件?

===

笔记:我绝对不会不小心把:)cp打错了scp

答案1

–o不是-o。当我把一个写在另一个下面时,我可以看到区别:

–o    # copied from the question
-o    # proper option with the regular ASCII dash

您的浏览器使用的字体可能让您容易看到,也可能不方便看到。无论如何,您使用的并不等同于-您应该使用的。

$ printf %s '–o' | xxd   # from the question
00000000: e280 936f                                ...o
$ printf %s '-o' | xxd   # the right one
00000000: 2d6f                                     -o
$

您使用的字符是Unicode 字符 ‘EN DASH’ (U+2013)

相关内容