shell中对文件指定行的操作

19 篇文章 1 订阅

shell中对文件指定行的操作

1、awk1

awk 可以设置条件来输出文件中m行到n行中每行的指定的k字段,使用格式如下

awk 'NR==m,NR==n {print $k}' path/filename

m,n,k表示实在的数值,其中k为0-9。如果要用变量来表示m,n的值,则变量需要用单引号将其引起来。

NR,{print }是awk命令在此用法下的规定字段;path/filename表示读取文件的路径及文件名。

当要读取某一行的内容的k字段时,使用格式如下

awk 'NR==m {print $k}' path/filename

m,k与以上的含义一致,分别表示要读取的行数和当前行的第k字段。

2、sed2

显示某行

 [root@localhost] # sed -n '1p'           #显示第一行 
 [root@localhost] # sed -n '$p'           #显示最后一行
 [root@localhost] # sed -n '1,2p'         #显示第一行到第二行
 [root@localhost] # sed -n '2,$p'         #显示第二行到最后一行

使用模式进行查询

[root@localhost] # sed -n '/ruby/p'       #查询包括关键字ruby所在所有行
[root@localhost] # sed -n '/\$/p'         #查询包括关键字$所在所有行,使用反斜线\屏蔽特殊含义

删除指定行

[root@localhost] # sed '1d'               #删除第一行 
[root@localhost] # sed '$d'               #删除最后一行
[root@localhost] # sed '1,2d'             #删除第一行到第二行
[root@localhost] # sed '2,$d'             #删除第二行到最后一行

  1. awk详细命令见:http://man.linuxde.net/awk ↩︎

  2. sed详细命令见:http://man.linuxde.net/sed ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值