scp传输文件的命令

scp传输文件的命令

scp传输文件的命令

一:scp常规的使用方式:

scp可以进行简单的远程复制文件的功能。它是一个在各个主机之间进行复制或文件传输的一个命令工具。它使用一种同ssh一样的安全机制来进行文件的传输。

注意:下面定义的远程计算机的主机域名是 192.168.1.104, 上传文件的路径是 /usr/local/nginx/html/webs 下面的文件;且 服务器的账号是 root, 那么密码需要自己输入自己的密码即可。

  1. 从本地上传文件到远程计算机或服务器的命令如下:
    先进入本地目录下,然后运行如下命令:
    scp my_local_file.zip root@192.168.1.104:/usr/local/nginx/html/webs

  2. 从远程主机复制文件到本地主机(下载)的命令如下:(假如远程文件是about.zip)
    先进入本地目录下,然后运行如下命令:
    scp root@192.168.1.104:/usr/local/nginx/html/webs/about.zip .

二: 多文件传输

2-1 从本地文件复制多个文件到远程主机(多个文件使用空格分隔开)
先进入本地目录下,然后运行如下命令:
scp index.css json.js root@192.168.1.104:/usr/local/nginx/html/webs

2-2 从远程主机复制多个文件到当前目录
先进入本地目录下,然后运行如下命令:
scp root@192.168.1.104:/usr/local/nginx/html/webs/{index.css,json.js} .

三:复制整个文件夹(使用r switch 并且指定目录)

3-1 从本地文件复制整个文件夹到远程主机上(文件夹假如是diff)
先进入本地目录下,然后运行如下命令:
scp -v -r diff root@192.168.1.104:/usr/local/nginx/html/webs

3-2 从远程主机复制整个文件夹到本地目录下(文件夹假如是diff)
先进入本地目录下,然后运行如下命令:
scp -r root@192.168.1.104:/usr/local/nginx/html/webs/diff .

四:在两个远程主机之间复制文件

scp也可以把文件从一个远程主机复制到另一个远程主机上。
如下命令:
scp root@192.168.1.104:/usr/local/nginx/html/webs/xx.txt root@192.168.1.105:/usr/local/nginx/html/webs/

五:使用压缩来加快传输

在文件传输的过程中,我们可以使用压缩文件来加快文件传输,我们可以使用 C选项来启用压缩功能,该文件在传输过程中被压缩,
在目的主机上被解压缩。

如下命令:
scp -vrC diff root@192.168.1.104:/usr/local/nginx/html/webs

### 使用 SCP 协议进行文件传输 SCP(Secure Copy Protocol)是一种通过 SSH 加密通道实现文件传输的协议,能够保障数据在网络中的安全性。以下是关于如何使用 SCP 协议进行文件传输的具体方法。 #### 基本语法 SCP 的基本命令结构如下: ```bash scp [选项] 源文件 目标文件 ``` 其中 `[选项]` 可以用于指定额外参数,比如端口号 `-P` 或递归复制目录 `-r` 等[^3]。 --- #### 本地到远程主机的文件传输 如果需要将本地的一个文件至远程服务器,则可以按照以下格式执行命令: ```bash scp /path/to/local/file username@remote_host:/path/to/destination/ ``` 例如,假设要将名为 `example.txt` 的文件从本地机器发送到 IP 地址为 `192.168.1.100` 的远程服务器 `/home/user/documents/` 文件夹下,可运行以下命令: ```bash scp example.txt user@192.168.1.100:/home/user/documents/ ``` 此操作会提示输入密码并完成文件传输[^4]。 --- #### 远程主机到本地的文件下载 当希望从远程服务器获取某个文件保存到当前计算机时,只需调整源和目的位置即可。例如,下面这条语句是从上述例子提到的那个远程服务器取回一份文档存放到自己的桌面上: ```bash scp user@192.168.1.100:/home/user/documents/example.txt ~/Desktop/ ``` --- #### 复制整个目录 对于批量处理多个文件的情况,通常需要用到带 `-r` 参数的形式来进行递归拷贝整个文件夹及其子项内容。像这样把一个叫作 `project_folder` 的资料库同步给另一台设备上的相同路径里去: ```bash scp -r project_folder/ user@192.168.1.100:/home/user/project_backup/ ``` 注意这里最后加上斜杠表示这是一个实际存在的目录而非单纯名称。 --- #### 自定义端口设置 某些情况下,默认使用的 22 端可能被更改过;那么就需要借助 `-P` 开头加自定数值来匹配新的服务监听地址了。举个实例说明:假如对方配置成了非标准模式下的 2222 ,那就要这么写法才行: ```bash scp -P 2222 local_file.txt remote_user@custom_port_server:/target/directory/ ``` 以上就是利用 SCP 工具简单高效地达成跨网络节点间资源共享的一些技巧介绍。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值