linux中nc命令带示例详解

Linux中nc命令是一个功能强大的网络工具,全称是netcat。

语法:

nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

参数说明:

-g<网关> 设置路由器跃程通信网关,最丢哦可设置8个。
-G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
-h 在线帮助。
-i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
-l 使用监听模式,管控传入的资料。
-n 直接使用IP地址,而不通过域名服务器。
-o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
-p<通信端口> 设置本地主机使用的通信端口。
-r 乱数指定本地与远端主机的通信端口。
-s<来源位址> 设置本地主机送出数据包的IP地址。
-u 使用UDP传输协议。
-v 显示指令执行过程。
-w<超时秒数> 设置等待连线的时间。
-z 使用0输入/输出模式,只在扫描通信端口时使用。

几个简单实例:

1.扫描指定的端口

[[email protected] ~]# nc -v -w 5 -z 192.168.233.129 8003 Connection to 192.168.233.129 8003 port [tcp/mcreport] succeeded!

2.扫描指定的端口范围

[[email protected] ~]# nc -v -w 5 -z 192.168.233.129 8000-8005nc: connect to 192.168.233.129 port 8000 (tcp) failed: Connection refusedConnection to 192.168.233.129 8001 port [tcp/vcom-tunnel] succeeded!Connection to 192.168.233.129 8002 port [tcp/teradataordbms] succeeded!Connection to 192.168.233.129 8003 port [tcp/mcreport] succeeded!nc: connect to 192.168.233.129 port 8004 (tcp) failed: Connection refusednc: connect to 192.168.233.129 port 8005 (tcp) failed: Connection refused

3.远程拷贝

在接收端192.168.233.128上打开1234端口:

nc -l 1234 >test.txt

在发送端执行:

nc 192.168.233.128  1234 <test.txt

注意:先运行接收端,指定一个端口为1234,文件为test.txt,再执行发送端,并且发送端必须存在同名的文件test.txt

4.远程传输目录

从server1(192.168.16.233)拷贝test目录内容到server2(192.168.48.47)上。需要先在server2上,用nc激活监听,

server2上运行:

# nc -l 1234 | tar xzv-

server1上运行:

[[email protected] ~]# tar zcv- test | nc 192.168.233.128 1234

5.简单聊天工具

在192.168.233.128上:

nc -l 1234

在192.168.233.129上:

nc 192.168.233.128 1234
时间: 2024-10-10 03:51:15

linux中nc命令带示例详解的相关文章

Linux Crontab [定时任务] 命令与参数详解

crontab命令常用于Unix和Linux系统中,用于设置周期性被执行的指令. 该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供读取和执行. 通常,crontab储存的指令被守护进程激活,crond服务常常在后台运行. 通过设定的时间来检查是否有作业需要执行,这类作业一般称为:cron jobs. crontab 文件 crontab文件包含送交cron守护进程的一系列作业和指令. 每个用户可以拥有自己的crontab文件,同时操作系统保存一个针对整个系统的crontab文

linux添加开机自启动脚本示例详解

来源: linux添加开机自启动脚本示例详解 linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有模块都能在任意目录启动时正常执行;step2. 再在/etc/rc.local的末尾添加一行以绝对路径启动脚本的行;如:$ vim /etc/rc.local#!/bin/sh## This script will be executed *after*

Linux下nl命令的用法详解

Linux中nl命令和cat命令很像,不过nl命令会打上行号,属于比较不常用的命令,下面随小编一起来了解下这个鲜为人知的nl命令吧. nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能. 1.命令格式: nl [选项]... [文件]... 2.命令参数: -b :指定行号指定的方式,主要有两种: -b a :表示不论是否为空行,也同样列出

Linux中搭建一个ftp服务器详解

来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)PORT模式:在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21)  发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ft

常见RAID级别原理, Linux中软RAID实现方式详解

前言:本文章耗费作者大量时间,转载声明转自anyisalin.blog.51cto.com RAID简介 RAID(Redundant Arry of Independent Disks)独立冗余阵列,旧称(Redundant Arry of Inexpensive Disks)廉价冗余阵列,其主要目的是将多个硬盘组成在一起来达到提高I/O.读写.冗余性. RAID分为硬件RAID和软件RAID 硬件RAID通过RAID卡连接多个硬盘.或者主板中集成了RAID控制器来实现RAID的相关功能. 软

linux中的FTP服务配置详解

本文主要内容有:linux中安装vsftpd(也就是FTP服务). 1.使用匿名用户上传和下载文件. 2.使用身份验证的方式上传和下载文件. 3.建立虚拟用户(步骤比较多). 4.为单独的用户建立单独的上传和下载机制(花那么多时间只是为了您知道"兂"这个字). 首先是安装vsftpd服务(也就是FTP服务),安装完成之后使用rpm -qc vsftpd查看文件的安装目录,也可以使用grep命令过滤掉以#开头的注释文件并查看配置文件. 下面是关闭iptables防火墙和SElinux策略

Linux性能监控命令之lsof详解

1. lsof 命令介绍 lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口.因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工

linux中的awk用法入门详解(一)

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK

Linux下RPM命令参数使用详解

一.什么是rpm    RPM 是Red hat Package Manager 的缩写,本意是Red Hat软件包管理,由RedHat开发出来的一种软件包管理程序,后来被LSB(Linux规范标准)会正式吸纳为Linux的标准包格式,命名为RPM Package Manager,现在所说的RPM即使 RPM Package Manager的缩写.二.为什么要使用RPM软件包管理器    RPM软件包管理器简化了用户在Linux系统上对软件进行安装.卸载.升级或更新的过程,只需要简短的命令就可以