`scp` 在源主机而不是本地机器上搜索目标别名

Irf*_*rfy 4 scp

当我尝试在两台主机之间复制文件时,其中第二台由别名标识:

scp host:foo alias:
Run Code Online (Sandbox Code Playgroud)

scp试图alias通过查看host:.ssh/config而不是我的本地来解决~/.ssh/config- 换句话说,就好像我已经 ssh-edhost然后执行了scp foo alias:.

当然,如果我没有aliashost. 这是预期的行为吗?

运行 Ubuntu 13.04。

Mar*_*ryl 11

实际上,thescp host1:foo host2:与在 thescp foo host2:上执行 the 相同host1(Thescp或多或少首先连接到 thehost1并在scp foo host2:那里执行)。

如果您想通过本地主机传输文件(我认为这也意味着别名在本地解析),请添加-3开关:

-3: 两个远程主机之间的副本通过本地主机传输。如果没有此选项,数据将直接在两个远程主机之间复制。

https://man.openbsd.org/scp

  • 天啊。`scp` 具有选项 `-1`、`-2`、`-3`、`-4` 和 `-6`,具有三个不同的“组”含义。*不寒而栗*无论如何,谢谢,就是这样。 (2认同)