因为电脑本地是 windows,多台机器间以 windows 为中介传输文件极度不爽。window 下的 MobaXterm 工具不能使用 sz 和 rz 命令, 而 SecureCRT 工具使用体验极差。
以下内容转自:https://blog.csdn.net/huangzx3/article/details/80844439
方法1,-----先启动接收命命令,后开启接发送命令
步骤1,先在B机器上启动一个接收文件的监听,格式如下
意思是把在10086端口接收到的数据都写到file文件里(这里文件名随意取)
nc -l port >file
栗子:nc -l 10086 >zabbix.rpm
步骤2,在A机器上往B机器的10086端口发送数据,把下面rpm包发送过去
nc 192.168.0.2 10086 < zabbix.rpm
B机器接收完毕,它会自动退出监听,文件大小和A机器一样,md5值也一样
方法2,-----先启动发送命命令,后开启接受命令
步骤1,先在B机器上,启动发送文件命令
下面命令表示通过本地的10086端口发送abc.txt文件
nc -l 10086 <abc.txt
步骤2,A机器上连接B机器,取接收文件
下面命令表示通过连接B机器的10086端口接收文件,并把文件存到本目录下,文件名为abc1.txt
nc 192.168.0.2 10086 > abc1.txt
方法3,-------传输整个目录
步骤1,B机器先启动监听,如下
A机器给B机器发送多个文件
传输目录需要结合其它的命令,比如tar
经过我的测试管道后面最后必须是 - ,不能是其余自定义的文件名
nc -l 10086|tar xfvz -
步骤2,A机器打包文件并连接B机器的端口
管道前面表示把当前目录的所有文件打包为 - ,然后使用nc发送给B机器
tar cfz - *|nc 192.168.0.2 10086
B机器这边会自动接收和解压
更多的 nc 使用技巧:
https://blog.csdn.net/wangqingchuan92/article/details/79666885