SCP(安全复制)是 Linux 和类 Unix 系统中的命令行工具,用于通过网络安全地跨系统传输文件和目录。它使用 Secure Shell SFTP 子系统进行数据传输,并使用相同的身份验证,并提供与 Secure Shell 相同的安全性。如果身份验证需要,Scp 将要求输入密码或密码短语。默认情况下,SCP 命令包含在 Linux 和 Mac 中,因此您无需使用这些操作系统下载任何内容。
在 Linux 上使用 SCP 命令
SCP(安全复制)是一个命令行实用程序,允许您在两个位置之间安全地复制文件和目录。
- SCP 命令的基本语法。
默认情况下,SCP 协议在端口上运行,22
除非被命令行选项覆盖。所有scp
命令都遵循以下格式:
[root@idroot.us ~]# scp [OPTIONS] [SOURCE] [DESTINATION]
- 将本地文件传输到远程目标。
例如,我们将文件从本地计算机上传到远程位置。使用 SCP,我们可以使用如下命令完成此操作:
[root@idroot.us ~]# scp path/to/local/file.txt user@remote-host:path/to/remote/file.txt
运行上述命令后,将显示与远程主机用户帐户对应的密码的提示。输入密码后,文件将被复制。
- 将远程文件传输到本地目标。
现在我们可以将文件从远程计算机复制到我们的本地计算机:
[root@idroot.us ~]# scp user@remote-host:path/to/remote/file.txt path/to/local/file.txt
- 将远程文件传输到远程目标。
运行以下命令格式用于在两个远程主机之间传输文件:
[root@idroot.us ~]# scp user1@remote-host1:path/to/remote/file.txt user2@remote-host2:path/to/remote/file.txt
- 复制目录。
该标志可用于递归复制文件夹及其内容而不是单个文件:-r
[root@idroot.us ~]# scp -r path/to/local/my-folder user@remote-host:path/to/remote/my-folder
- 抑制模式。
该标志会抑制进度表和非错误消息,以便您的终端保持干净:-q
[root@idroot.us ~]# scp -q path/to/local/file.txt user@remote-host:path/to/remote/file.txt
- 身份验证密钥对文件。
该标志可用于使用存储在文件中的加密密钥对而不是用户名和密码来验证连接:-i
[root@idroot.us ~]# scp -i path/to/local/keypair.pem path/to/local/file.txt user@remote-host:path/to/remote/file.txt
- 使用多个 SCP 选项。
这是一个示例,它实现了多个标志以使用密钥对文件在端口 999 上进行身份验证,同时保留文件属性并抑制输出,从而将文件夹从远程主机复制到我们的本地计算机:
[root@idroot.us ~]# scp -p -q -P 999 -i path/to/local/keypair.pem -r path/to/local/folder user@remote-host:path/to/remote/folder
感谢您使用本教程,我们涵盖了从本地主机到远程主机、从远程主机到本地主机以及在 Linux 系统上的两个远程主机之间传输文件。
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun71130.html