例1:找出当前系统中端口大于1024的程序!

使用netstat -tuln查询出的结果如下,需要输出红色字体的行:

[root@localhost ~]# netstat -tuln

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State      

tcp        0      0 0.0.0.0:49506               0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:27017               0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      

tcp        0      0 127.0.0.1:6379              0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      

tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      

tcp        0      0 127.0.0.1:88                0.0.0.0:*                   LISTEN      

tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      

tcp        0      0 :::111                      :::*                        LISTEN      

tcp        0      0 :::49331                    :::*                        LISTEN      

tcp        0      0 :::22                       :::*                        LISTEN      

tcp        0      0 ::1:631                     :::*                        LISTEN      

udp        0      0 0.0.0.0:37727               0.0.0.0:*                              

udp        0      0 0.0.0.0:751                 0.0.0.0:*                               

udp        0      0 0.0.0.0:111                 0.0.0.0:*                               

udp        0      0 0.0.0.0:631                 0.0.0.0:*                               

udp        0      0 0.0.0.0:68                  0.0.0.0:*                               

udp        0      0 127.0.0.1:852               0.0.0.0:*                               

udp        0      0 :::33901                    :::*                                   

udp        0      0 :::751                      :::*                                    

udp        0      0 :::111                      :::*

【解法1】

awk  '{match($0,/.*:([0-9]+)/,a)}a[1]>1024{print a[1]}'  1.txt

说明:将netstat -tuln的输出结果保存为1.txt.

使用match来匹配内容,$0表示1.txt的内容。

/.*:([0-9]+)/为正则表达式,匹配需要的内容。匹配规则为:前面为任意多个字符+冒号+数字+任意多个字符。并把匹配到的内容自动赋值到数组a中,a的            下标             从1开始。如果a[1]的值大于1024,那么打印a[1]的值。

【解法2】

netstat -tuln|awk   -F:   '+$2>1024'

说明:

【解法3】

netstat -tuln|awk   '+gensub(".*:","",1,$4)>1024'

说明:gensub的语法为gensub("匹配到的字符串",'替换后的字符串',起始的位置),gensub(".*:","",1,$4)就是将.*匹配到的内容替换成空,然后显示第4列大于                 1024的数据。

【解法4】

ss -tu sport ge :1024

说明:ss命令的用法,-tu表示tcp和udp协议.

Shell脚本问题详解的更多相关文章

  1. shell脚本进阶 详解及其实例(一)

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  2. linux自动化交互脚本expect详解set timeout 5是 意思是在expect语句中,5s后超时,不再作出选择。

    linux自动化交互脚本expect详解  更新时间:2020年10月21日 10:13:20   作者:lendsomething     这篇文章主要介绍了linux自动化交互脚本expect的相 ...

  3. RHCE脚本题目详解

    目录 RHCE脚本题目详解 题目一 shell脚本之if语句实现: shell脚本之case语句实现: 题目二 实现 测试 解析 写在后面 RHCE脚本题目详解 题目一 在system1上创建一个名为 ...

  4. shell字符串操作详解

    shell字符串操作详解的相关资料. 1.shell变量声明的判断  表达式 含义 ${var} 变量var的值, 与$var相同 ${var-DEFAULT} 如果var没有被声明, 那么就以$DE ...

  5. [Spark内核] 第36课:TaskScheduler内幕天机解密:Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详解等

    本課主題 通过 Spark-shell 窥探程序运行时的状况 TaskScheduler 与 SchedulerBackend 之间的关系 FIFO 与 FAIR 两种调度模式彻底解密 Task 数据 ...

  6. Linux Shell系列教程之(八)Shell printf命令详解

    本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell p ...

  7. Linux shell tr 命令详解

    该随笔摘自 https://www.jb51.net/article/103892.htm Linux shell tr 命令详解 1. 用途 tr,translate的简写,主要用于压缩重复字符,删 ...

  8. jws.mono脚本安装详解

    就在最近两天,最新版本的jws.mono上线了,这个版本除了提供与之前版本拥有的功能外,还额外提供了一个“自动化”的安装脚本,通过执行该脚本,jws.mono将自动快速的安装到指定的目录,同时,通过改 ...

  9. shell sed过滤器详解

    1. Sed简介sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中 ...

随机推荐

  1. [JLOI2008]将军

    Description 刘先生最近在学习国际象棋,使用一个叫"jloi-08"的游戏软件.在这个游戏里,不但可以和电脑普通地对弈,还可以学习著名的棋局,还有针对初学者的规则指导等丰 ...

  2. 【模板】c++动态数组vector

    相信大家都知道$C$++里有一个流弊的$STL$模板库.. 今天我们就要谈一谈这里面的一个容器:动态数组$vector$. $vector$实际上类似于$a[]$这个东西,也就是说它重载了$[]$运算 ...

  3. 1-10super和this关键字

    什么是super? super代表的是当前子类对象中的父类型特征. 什么时候使用super? 子类和父类中都有某个数据,例如,子类和父类中都有name这个属性.如果要再子类中访问父类中的name属性, ...

  4. printf格式化输出参数

    1.类型 类型字符用以表示输出数据的类型,其格式符和意义如下表所示: 格式字符 意义 d 以十进制形式输出带符号整数(正数不输出符号) o 以八进制形式输出无符号整数(不输出前缀0) x,X 以十六进 ...

  5. Keepalived+Nginx实现Nginx的高可用

    集群规划 主机名 IP VIP Nginx:port KeepAlived主备 KA_NG_01 192.168.30.130 192.168.30.120 8088 MASTER KA_NG_02 ...

  6. grunt配置详情

    这个grunt配置 是我的一个程序员朋友从网上无意间看到的,然后他亲测了下,恩,是可以的.不过我到目前还未测试过是否可以. 一.安装node, 首先确保电脑已有node的环境.然后 运行  npm i ...

  7. position 位置、表单

    一.position    位置 1.只要使用了定位,必须有一个相对的参照物 2.具体定位的那个元素需加position:absolute:(绝对的)   绝对的:就是具体到某一个地方,特别详细的意思 ...

  8. 第一次向nodeclub提交修改

    今天第一次向nodeclub提交了两个修改,两个修改都是涉及部分浏览器的兼容性的. Manager很快合并了我的修改,好开森.晚上又重新回炉了一下git的日常操作,将git部分操作整理了一下写于此博. ...

  9. PHP memcache扩展安装 for Windows

    一.下载并安装memcached服务器端软件    1.下载memcached软件 32位下载地址: memcached-win32-1.4.4-14.zip(直接下载),memcached-win3 ...

  10. win7创建无线(WIFI)cmd命令

    1.创建无限热点:netsh wlan set hostednetwork mode=allow ssid=name key=12345678. 2.承载网络:netsh wlan start(关闭s ...