scp指定了端口号

我试图从远程服务器scp文件到我的本地机器。 只有端口80可以访问。

我试过了:

scp -p 80 username@www.myserver.com:/root/file.txt .

但得到这个错误: cp: 80: No such file or directory

如何在scp命令中指定端口号?


与ssh不同,scp使用大写的P开关来设置端口而不是小写的p:

scp -P 80 ... # Use port 80 to bypass the firewall, instead of the scp default

小写字母p开关与scp一起用于保存时间和模式。

以下是scp手册页的摘录,其中包含有关两个开关的所有详细信息,以及为什么选择大写字母P作为scp的解释:

-P端口指定要在远程主机上连接的端口。 请注意,此选项是用大写字母“P”编写的,因为-p已保留用于保留rcp(1)中文件的时间和模式。

-p保留原始文件的修改时间,访问时间和模式。


一个额外的提示。 无论您正在进入的机器是第二个机器(又名目的地),在scp命令之后放置'-P'选项。 例:

scp -P 2222 /absolute_path/source-folder/some-file user@example.com:/absolute_path/destination-folder

你知道什么比-P更酷吗? 没有

如果您多次使用此服务器,请使用以下条目设置/创建~/.ssh/config文件:

Host www.myserver.com
    Port 80

要么

Host myserver myserver80 short any.name.u.want yes_anything well-within-reason
    HostName www.myserver.com
    Port 80
    User username

然后你可以使用:

scp username@www.myserver.com:/root/file.txt .

要么

scp short:/root/file.txt .

您可以使用ssh,scp,rsync,git和more在“主机”行上使用任何内容

您可以在配置文件中使用MANY配置选项,请参阅:

man ssh_config

链接地址: http://www.djcxy.com/p/25719.html

上一篇: scp with port number specified

下一篇: How to scp in python?