075玩软件园
首页 > 资讯教程 > 软件教程 > 使用教程 > linux nc命令传输文件(远程复制文件)

linux nc命令传输文件(远程复制文件)

作者:075玩 来源:互联网 2023-09-14 08:00:08

nc 到底干嘛用的我不多描述,今天主要讲下用nc 传输文件。由于公司的设备sudo 后没有ssh ,scp 等远程接入命令,或host.deny 里面设置了ssh 的deny ,不管怎样的原因。我今天跨过大家常用的scp, 来说明下一个更有用的轻量级工具,nc 的另一个强大的功--- 文件传输。 范例如下:目的主机监听nc -l 监听端口[ 未使用端口] > 要接收的文件名 nc -l 4444 > cache.tar.gz 源主机发起请求nc 目的主机ip 目的端口 filename.out Using a second machine, connect to the listening nc process, feeding it the file which is to be transferred: $ nc host.example.com 1234 ][-G][-i][-o][-p][-s][-v...][-w][ 主机名称][ 通信端口...] 补充说明: 执行本指令可设置路由器的相关参数。 参数:-g 设置路由器跃程通信网关,最丢哦可设置8 个。 -G 设置来源路由指向器,其数值为4 的倍数。 -h 在线帮助。 -i 设置时间间隔,以便传送信息及扫描通信端口。 -l 使用监听模式,管控传入的资料。 -n 直接使用IP 地址,而不通过域名 服务器 。 -p 设置本地主机使用的通信端口。 -r 乱数指定本地与远端主机的通信端口。 -s 设置本地主机送出数据包的IP 地址。 -u 使用UDP 传输 协议 。 -v 显示指令执行过程。 -w 设置等待连线的时间。 -z 使用0 输入/ 输出模式,只在扫描通信端口时使用Linux 远程复制文件如果想把机器A上面的dir目录下面的所有文件复制到机器B的dir目录下,我们可以使用nc命令来完成在机器A的dir目录下面执行:tar -czf - * | nc -l 4444 然后再机器B的目录目录dir下面执行:sudo nc 「机器A的机器ip」 4444 | sudo tar -xzf -补充资料2:1,在Linux下需要对大量小文件进行移动或复制时,用cp、mv都会显得很没有效率,可以用tar先压缩再解压缩的方式。

2,在网络环境中传输时,可以再结合nc命令,通过管道和tcp端口进行传输。

nc和tar可以用来快速的在两台机器之间传输文件和目录,比ftp和scp要来得简单的多。

由于nc是一个超轻量的命令,所以一般busybox都会集成它。当一个linux终端,比如linux pda,通过usblan的方式连接到另一台linux主机的时候,这样的嵌入式终端上一般不会集成ftp server, ssh server这样比较笨重的服务,这个时候, nc可能成为唯一的上传手段。

比如将机器A上的mytest目录上传到到机器 B(192.168.0.11)上,只需要:

在机器B上,用nc来监听一个端口,随便就好,只要不被占用;并且将收到的数据用tar展开。-l代表监听模式。

[root@ www.linuxidc.com ~]#nc -l 4444 |tar -C /tmp/dir -zxf -

然后,在A上通过nc和 tar发送test目录。使用一致的4444的端口。

[root@ www.linuxidc.net ~]#tar -zcvf - mytest|nc 192.168.0.11 4444

记得有一次,一台机器内核崩了,后来有位高手用liveCD把机器启动起来,就是用了类似的方法把数据导出来的。

关 键 词:
返回顶部