📜  Linux 中的 scp 命令和示例(1)

📅  最后修改于: 2023-12-03 15:17:22.156000             🧑  作者: Mango

Linux 中的 scp 命令和示例

简介

scp(secure copy)是 Linux 下的一个用于文件传输的命令,可以在不同的主机之间进行文件的复制、传输及安全性的支持。scp 命令使用 SSH 协议进行数据传输,与 sftp 工具类似。scp 通过 ssh 协议对数据进行加密,可以传输数据压缩后的版本来提高传输速度。

基本用法

scp 命令的基本语法如下:

scp [参数] [源文件路径] [目标文件路径]

其中:

  • 参数:scp 支持一系列参数,以实现不同的功能或提高传输的效率。具体的参数列表可以使用 man scp 命令查看。
  • 源文件路径:需要传输的源文件的路径。
  • 目标文件路径:目标文件的路径。可以是本地机器或远程机器。远程机器的路径使用 user@remote:/remote/directory 来指定,其中 user 是远程机器的用户名,remote 是远程机器的域名或 IP 地址,/remote/directory 是远程机器的路径。
实例
本地与远程机器间上传文件

将本地的 /home/user/file.txt 文件上传到远程机器 192.168.1.100/tmp 目录下:

scp /home/user/file.txt user@192.168.1.100:/tmp
从远程机器下载文件到本地

将远程机器 192.168.1.100/home/user/file.txt 文件下载到本地 /tmp 目录下:

scp user@192.168.1.100:/home/user/file.txt /tmp
上传目录

将本地 /home/user/test 目录上传到远程机器 192.168.1.100/tmp 目录下:

scp -r /home/user/test user@192.168.1.100:/tmp
下载目录

将远程机器 192.168.1.100/home/user/test 目录下载到本地 /tmp 目录下:

scp -r user@192.168.1.100:/home/user/test /tmp
注意事项
  • 当使用 scp 命令进行文件传输时,传输的文件的权限信息将被保留。如果需要在传输时修改权限信息,可以使用 chmod 命令修改。
  • 如果传输的文件是压缩文件,推荐使用 tar 命令在本地将其压缩后传输。这样可以提高传输速度,同时又不需要在远程机器上进行解压操作。