2023-04-14 05:00:00

指定端口号的SCP

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

我试着:

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

cp: 80:没有这样的文件或目录

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


当前回答

另外一个提示。将'-P'选项放在scp命令之后,无论您要ssh-ing到的机器是否是第二个机器(也就是目的地)。例子:

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

其他回答

端口可以使用scp协议路径指定:scp://[user@]host[: Port][/path]

源自man scp:

源和目标可以指定为本地路径名、具有可选路径的远程主机(形式为[user@]host:[path])或URI(形式为 scp: / / [user@][:港口][/路径]。本地文件名可以显式使用绝对或相对路径名,以避免scp处理包含':'的文件名: 作为主机说明符。

例子:

scp local/filename scp://user@acme.com:22222/path/to/filename
scp scp://userA@foo.com:22222/path/to/filename scp://userB@bar.com:33333/path/to/filename

注意,如果你的路径是从根开始的,你需要在你的路径中有两个/s。例如,

scp local/filename scp://user@acme.com:22222//root/path/to/filename

如果需要将本地文件复制到服务器(指定端口)

scp -P 3838 /the/source/file username@server.com:/destination/file

这可以通过-P开关指定port来实现:

scp -i ~/keys/yourkey -P2222 file ubuntu@host:/directory/

答案有很多,但你应该保持简单。确保您知道SSH正在侦听的端口,并定义它。这是我用来复制你的问题的。

scp -P 12222 file.7z user@193.168.X.X:/home/user/下载 结果很好。

希望这对寻找完美答案的人有所帮助

将具有定义端口的服务器上的文件夹或文件复制到另一台服务器或本地计算机

转到您有管理权限的目录,最好是您想要复制文件的机器上的主目录 编写下面的命令

scp -r -P port user@IP_address:/home/file/pathDirectory。

**Note:** The last . on the command directs it to copy everything in that folder to your directory of preference