sed和awk

1.sed

sed(stream editor) :一次处理一行内容,处理时,把当前的行存储在临时缓冲区,处理完后,输送到屏幕

格式:sed [参数]  [操作]

sed [参数]  ‘命令操作’   file
      -n                     ##静默状态 (无输出)
      -i                     ##直接修改文件的内容,而不是由屏幕输出
      -e                     ##直接在命令行模式上进行sed操作编辑
      -f                     ##直接将sed操作写在一个文件内
    
               p             ##显示
               d             ##删除
               a             ##添加
               c             ##替换
               i             ##插入

1)p

  • 示例:显示不以#开头的行


2)a

  • 示例:在hello后换行添加world


3)c

  • 示例:将hello所在的行替换成world


5)i

  • 示例:在hello前添加world

 

6)-i 参数

  • 示例:更改文件,将world这一行替换为hello redhat

 

练习:将http的端口改为8080

执行结果如下:

 

 

2.awk 报告生成器

1)awk处理机制:根据模式一次从文件中抽取一行文本,对这行文本进行切片,默认使用空白字符作为分割符

格式:

awk '条件类型1{操作1}  条件类型2{操作2} ……'  filename

-F "分隔符"
默认分割副为空格
  • 示例1:

 

2)常用变量

FILENAME    ##文件名
NR          ##行
NF          ##列
BEGIN {}    ##读入第一行文本之前执行的语句,一般用来初始化操作
{} :逐行处理
END {}      ##处理完最后一行文本后,执行
  • FILENAME

  • NR  NF

 

练习1:打印/etc/passwd文件中的uid<2的用户,并输出用户名和uid

练习2:统计文本的总字段

 

3)if单分支

  • 示例:统计uid小于等于500的用户个数


4)if双分支

  • 示例:统计uid小于等于500和大于500的用户个数

 

5)for循环

  • 示例:输出1……5

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值