shell编程基础(利用scp在两台主机之间拷贝文件)

前言

    两台计算机,总需要相互拷贝文件,介绍给大家的一个SCP命令,方便拷贝文件。

什么是scp?

SCP命令是远程文件拷贝命令,它可以在不同主机之间安全地传输文件,它使用SSH协议进行数据传输,数据传输加密,能够保证数据的安全性,同时支持多种操作系统,包括Linux、Unix、MacOS,你就说爽不爽吧。

SCP命令的语法格式

```
scp [可选参数] [原路径] [目标路径]
```

可选参数有:

-r:递归复制整个目录
-P:指定端口号
-v:显示详细的处理信息
-p:保留文件的原有属性信息

原路径和目标路径参数可以是本地路径或远程路径

本地路径指当前计算机中的文件路径

远程路径指另外一台计算机中的文件路径。

注意:如果路径中包含空格,需要用引号括起来

将本地文件拷贝到远程服务器

```
scp local_file remote_username@remote_ip:remote_folder
```

具体案例


scp /home/user/documents/file.txt user@example.com:/remote/directory/
 

解释

- /home/user/documents/file.txt是本地文件路径
- user是远程服务器的用户名
- example.com是远程服务器的地址(如果是ip地址也可以)
- /remote/directory/是远程服务器上的目标路径

将远程服务器的文件拷贝到本地

```
scp remote_username@remote_ip:remote_file local_folder
```

具体案例


scp user@example.com:/remote/directory/file.txt /home/user/downloads/
 

解释

- user是远程服务器的用户名
- example.com是远程服务器的地址(如果是ip地址也可以)
- /remote/directory/file.txt是远程服务器上的源文件路径
- /home/user/downloads/是本地目标路径

将本地文件夹拷贝到远程服务器

```
scp -r local_folder remote_username@remote_ip:remote_folder
```

具体案例


scp -r /home/user/local_folder remote_user@remote_server:/home/remote_user/remote_folder
 

解释

-r参数表示递归复制整个目录,如果目录中包含子目录和文件,也会全部复制

remote_user是远程服务器的用户名

remote_server是远程服务器的 IP 地址或主机名

将远程服务器的文件夹拷贝到本地

```
scp -r remote_username@remote_ip:remote_folder local_folder
```

具体案例


scp -r user@remote:/home/user/files /Users/yourusername/Documents/files

总结

scp命令好用啊,记得还要输入远程主机的密码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值