从零开始学shell之nc命令

前言

nc命令全称是netcat。顾名思义就是连接网络之间的数据——帮助我们在局域网中互相传送数据的工具。类似于以前在学校机房里面使用的飞鸽软件吧。nc软件主要用来传输数据和文件,以及进行网络端口的监听。

说明

参数l

指定nc为监听模式

格式

nc -l ip port
eg: nc -l 0.0.0.0 9999 监听本地端口9999
ps:ip不能使用hostname

参数k

后台模式。让nc一直在后台运行,如果不指定这个参数,nc在处理一次请求后就会停止监听,关闭程序。必须和l参数配合使用。

格式

nc -lk ip port
eg: nc -lk 0.0.0.0 9999 一直监听本地端口9999,直到打断程序。

参数u

使用udp代替默认的tpc连接。就像描述的那样了。

常用功能

传输数据

接收方


nc -l 0.0.0.0 9999

发送方


nc 对方ip地址 9999
输入数据

传输文件

接收方

nc -l 0.0.0.0 9999  > recv.file

发送方

nc 对方ip地址 9999  < send.file

端口扫描

nc -v -w 3 对方ip -z 21-25
-v: 显示全部信息,不加这个只会返回成功信息
-w: timeout时间,以秒为单位
-z: 支持指定范围的扫描

总结

nc是一个强大方便的工具,对于平时测试系统和局域网传输数据有很大的帮助,能派上巨大的用场。