CentOS 下使用可视化pv+nc命令传输文件

由于有时Linux服务器可能网络等等其它原因没法通过rsync 或者scp的方式传输文件,那有没有更简洁的方式来进行文件传输呢
nc是netcat的简写,有着网络界的瑞士军刀美誉,,是一款功能强大的网络调试和探测工具,之前有介绍命名nc进行端口探测如何探测UDP端口是否开放,除了进行端口探测之外,nc还有一个很强大的功能就是文件传输
下面介绍nc命令进行文件传送
1)如上所图所示
ServerA:10.20.10.60
ServerB:10.20.10.62
ServerA上生成一个测试文件CentOS6.iso 大小1000M=1G
然后nc -l 1234 < CentOS6.iso 
ServerA 监听在1234端口上,作为发送端
SeverB上进行接收nc 10.20.10.60 1234 > CentOS6.iso
接收完成后可以使用md5sum比较文件的md5值确认收到的文件是否与发送端一致
2)为了更直观的显示传输进度与速度,可以配合PV命令
ServerA上
rpm -ivh pv-1.6.6-1.x86_64.rpm
dd if=/dev/zero of=CentOS6_20190825.iso bs=1024M count=1
md5sum CentOS6_20190825.iso
pv CentOS6_20190825.iso | nc -l 2345
ServerB上
rpm -ivh pv-1.6.6-1.x86_64.rpm
 nc 10.20.10.60 2345 | pv > CentOS6-20190825.iso
这样文件就传输到了ServerB上,你可以看到传输的进度
如果传输目录的话
例如:/usr/local/mysql/data目录
发送端
cd /usr/local/mysql/data
tar -zcf – * | pv | nc -l  3456
接收端
nc 10.20.10.62 3456 | pv | tar -zxf –
 

未经允许不得转载:大自然的搬运工 » CentOS 下使用可视化pv+nc命令传输文件

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址