linux nc 命令传输文件

nc 到底干嘛用的我不多描述,今天主要讲下用nc 传输文件。由于公司的设备sudo 后没有sshscp 等远程接入命令,或host.deny 里面设置了sshdeny ,不管怎样的原因。我今天跨过大家常用的scp, 来说明下一个更有用的轻量级工具,nc 的另一个强大的功--- 文件传输。

 

 

范例如下:

 

目的主机监听

 
nc -l 监听端口[ 未使用端口] > 要接收的文件名

nc -l 4444 > cache.tar.gz

 

源主机发起请求

 
nc 目的主机ip 目的端口 < 要发送的文件

nc 192.168.0.85 4444 < /root/cache.tar.gz

  

netstat   如下

[root@localhost jiangbao]# netstat -tpln

tcp 0 0 0.0.0.0:4444 0.0.0.0:* LISTEN 18166/nc

  

英文描述如下

 

DATA TRANSFER



Start by using nc to listen on a specific port, with output captured into a file:

$ nc -l 1234 > 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 < filename.in

  

另附nc 的其他选项说明:

 

语  法: nc [-hlnruz][-g< 网关...>][-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 输入/ 输出模式,只在扫描通信端口时使用

猜你喜欢

转载自cduym.iteye.com/blog/1741199