前言
如果有图形界面的话 我们可以直接使用FileZilla
或者 SecureCRT
进行文件传输
但Linux服务器都是不带图形界面的, 这个时候我们需要通过相关指令来处理
假设有两台Linux机器A和B, 我们需要从A传输文件至B
可以采用以下几种方式:
第一种 使用nc指令
操作如下:
服务器B开启文件端口监听:
1 | nc -l 3300 > aaa.tar //将接受的文件取名为aaa.tar |
服务器A传输文件:
1 | nc 服务器Bip 3300 < 需要传送的文件 |
第二种 使用scp指令
操作如下:
1 | scp -r 需要传输的目录 root@服务器ip:目标存放目录 |
第三种 使用rsync指令
操作如下:
1 | rsync -r 需要传输的目录 root@服务器Bip:目标存放目录 |
和scp
很相似, 比scp
多了一个排除子目录的功能:
1 | rsync -r -v --exclude 需要排除不进行传输的子目录 需要传输的目录 root@服务器Bip:目标存放目录 |
第四种 使用wget工具
操作如下:
首先服务器B需要开启http
服务, 这里以python
为例:
1 | python -m http.server 3300 |
服务器A开始从B下载文件:
1 | sudo wget -bc --limit-rate=6M 0.0.0.0:3300/需要下载的文件 |
参数说明:
-b
: 后台执行-c
: 断点续传–limit-rate=6M
: 限速6M
总结
工具 | 优点 | 缺点 |
---|---|---|
nc | 采用tcp协议 占用系统资源小 速度快 | 安全性不高 操作相对繁琐 |
wget | 采用tcp协议 支持子目录排除 支持限速 断点续传 | 安全性不高操作相对繁琐 |
scp | 采用ssh协议 传输安全 支持限速 占用系统资源小 | 不支持子目录排除 |
rsync | 采用ssh协议 传输安全 速度比scp快 支持子目录排除 支持限速和本地复制 | 小文件众多时比较消耗资源 |
本文为作者原创 转载时请注明出处 谢谢
微信公众号二维码如下: