信息发布→ 登录 注册 退出

LINUX怎么传输文件到另一台服务器_LINUX scp命令用法

发布时间:2025-11-27

点击量:
scp命令基于SSH协议实现安全文件传输,支持本地与远程及远程间复制。1. 将本地文件复制到远程:scp /path/to/file.txt user@remote_host:/home/user/;2. 从远程下载文件:scp user@remote_host:/home/user/file.txt ./;3. 两台远程服务器间复制:scp user1@host1:/path/file user2@host2:/path/(需输入双端密码);4. 递归复制目录用-r:scp -r /local/dir user@remote_host:/remote/dir/;5. 指定非默认SSH端口用-P:scp -P 2222 file.txt user@remote_host:/home/user/;6. 启用压缩加速传输用-C:scp -C largefile.zip user@remote_host:/backup/。常用选项包括-r(递归)、-P(端口)、-C(压缩)、-v(详细信息)、-q(静默模式)。注意-P为大写表示端口,-p为小写保留属性。建议使用密钥认证并确保目标目录有写权限,SSH服务正常运行。scp简单可靠,适用于脚本和日常文件传输。

在Linux系统中,scp(secure copy)命令是最常用且安全的文件传输方式之一,它基于SSH协议,可以在本地与远程服务器之间复制文件,也可以在两台远程服务器之间传输文件。

scp 命令基本语法

scp [选项] 源路径 目标路径

源或目标可以是本地路径,也可以是远程主机的路径,格式为:用户名@主机地址:路径

常见用法示例

1. 本地文件复制到远程服务器

将本地的 file.txt 复制到远程服务器的 /home/user/ 目录下:

scp /path/to/file.txt user@remote_host:/home/user/

2. 从远程服务器下载文件到本地

从远程服务器获取文件并保存到当前目录:

scp user@remote_host:/home/user/file.txt ./

3. 在两台远程服务器之间复制文件

从一台远程服务器复制文件到另一台(需本地作为跳板):

scp user1@host1:/path/file user2@host2:/path/

执行时会提示输入两个服务器的密码。

4. 复制整个目录(使用 -r 参数)

递归复制整个目录:

  • scp -r /local/dir user@remote_host:/remote/dir/

5. 指定SSH端口(使用 -P 参数)

如果远程服务器SSH端口不是默认的22:

  • scp -P 2222 file.txt user@remote_host:/home/user/

6. 启用压缩传输(使用 -C 参数)

在传输过程中启用压缩,提升大文件传输速度:

  • scp -C largefile.zip user@remote_host:/backup/

常用选项说明

  • -r:递归复制,用于复制目录
  • -P:指定远程主机的SSH端口(注意大写)
  • -C:启用压缩,加快传输速度
  • -v:显示详细过程,用于调试
  • -q:静默模式,不显示传输进度

注意:不要把 -P-p 搞混。-P 是端口,-p 是保留文件属性(如修改时间)。

安全与权限注意事项

scp 使用 SSH 认证,推荐配合密钥登录,避免频繁输入密码。

  • 确保远程用户对目标目录有写权限
  • 检查SSH服务是否运行且端口开放
  • 使用密钥认证可结合 ssh-agent 提高效率

基本上就这些。scp 简单可靠,适合脚本和日常使用,只要网络通、权限对,传文件很顺畅。

标签:# linux  # 端口  # linux系统  # 递归  # copy  # ssh  # 两台  # 文件传输  # 传输速度  # 适用于  # 一台  # 要把  # 远程下载  # 最常用  # 正常运行  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!