sed和awk的练习
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,使用sed打印出IP地址:[root@Srv02 ~]# ifconfig eth0 |grep Mask|sed 's/^.*dr://g'|sed 's/Bc.*$//g'192.168.1.22
千家信息网最后更新 2025年01月25日sed和awk的练习
使用sed打印出IP地址:
[root@Srv02 ~]# ifconfig eth0 |grep Mask|sed 's/^.*dr://g'|sed 's/Bc.*$//g'192.168.1.223
[root@Srv02 ~]# ifconfig eth0 |grep Mask|sed -n 's/^.*dr:\(.*\)Bc.*$/\1/gp'192.168.1.223
awk打印IP:
[root@Srv02 ~]# ifconfig eth0 |grep Mask|awk '{print $2}'|awk -F: '{print $2}'192.168.1.223
[root@Srv02 ~]# ifconfig eth0 |grep Mask|awk -F[:\ ] '{print $13}'192.168.1.223
使用awk内部变量的方式指定分隔符:
[root@Srv02 ~]# ifconfig eth0|grep Mask|awk 'BEGIN{FS="[:\\ ]"}{print $13}'192.168.1.223
打印/etc/passwd文件内,$1为weblogic和tomcat的两行(使用判断语句):
[root@Srv02 ~]# more /etc/passwd|awk -F: '{if ($1=="weblogic" || $1=="tomcat" ) print $0}'weblogic:x:501:503::/home/weblogic:/bin/bashtomcat:x:502:504::/home/tomcat:/bin/bash
这里使用~也是一样的效果:
[root@Srv02 ~]# more /etc/passwd|awk -F: '{if ($1~"weblogic" || $1~"tomcat" ) print $0}'weblogic:x:501:503::/home/weblogic:/bin/bashtomcat:x:502:504::/home/tomcat:/bin/bash
如果$1为变量name的值,就整行输出:
[root@Srv02 ~]# more /etc/passwd|awk -F: 'BEGIN{name="oracle"}{if($1~name)print $0}'oracle:x:500:500::/home/oracle:/bin/bash
awk内部变量的介绍:
NF:表示有多少列。
$NF:表示最后一列。
NR:表示行号。
ORS:输出记录分割符
OFS:输出字段分割符
RS: 记录分割符
[root@Srv02 ~]# tail -4 /etc/passwdoracle:x:500:500::/home/oracle:/bin/bashweblogic:x:501:503::/home/weblogic:/bin/bashtomcat:x:502:504::/home/tomcat:/bin/bashnx:x:102:158::/usr/NX/home/nx:/usr/NX/bin/nxserver[root@Srv02 ~]# tail -4 /etc/passwd | awk '{print NF}'1111[root@Srv02 ~]# tail -4 /etc/passwd | awk -F: '{print NF}'7777[root@Srv02 ~]# tail -4 /etc/passwd | awk -F: '{print $NF}'/bin/bash/bin/bash/bin/bash/usr/NX/bin/nxserver
使用awk打印端口号:
[root@Srv02 ~]# netstat -ntl |awk '{if($4~"[0-9]$") print $4}'|awk -F: '{print $NF}'80018005800933801.....
使打印输出显示行号:
[root@Srv02 ~]# awk -F: '{print NR,$1}' /etc/passwd1 root2 bin3 daemon4 adm5 lp6 sync
显示$1为oracle的这一行的行号:
[root@Srv02 ~]# more /etc/passwd |awk -F: '{if ($1~"oracle") print NR}'39
输出时以###作为字段分隔符:
[root@Srv02 ~]# tail -4 /etc/passwd |awk -F: 'BEGIN {OFS="###"}{print $1,$7,$3}'oracle###/bin/bash###500weblogic###/bin/bash###501tomcat###/bin/bash###502nx###/usr/NX/bin/nxserver###102
输出
变量
行号
分隔符
字段
一行
口号
地址
效果
文件
方式
语句
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
怎样攻入微信小程序的数据库
中国期刊网出自哪个数据库
kanzi软件开发哪家好
联通宽带一直在服务器上
网络安全售后服务内容及措施
cdept数据库
数据库表上建一个索引
软件开发主要有
网络安全认知实习报告
扫黄网络安全课件
数据备份管理服务器
网络技术提供者
网络安全小卫士a3纸绘画
昆明学院数据库系统原理
软件开发 角色
浙江调度服务器报价
软件开发服务费用报销
中国电信网络安全防线
企业业务系统数据库例子
英雄联盟登陆 无法连接服务器
网络安全问题占世界百分比
服务器上面挂载+文件系统
潍坊江西县app软件开发
比较两个表中不同的数据库
楼层保护网络技术
国家网络安全监控平台
电信机房有多少台服务器
河北元素网络技术有限公司
机械网络技术概念设计
进程数据库