Linux三剑客

1.grep 命令 :强大的文本’搜索’工具

1.grep   -n   'word'  file_name

在file_name文件中找到word所在的所有行并显示。-n 为显示行号。
在这里插入图片描述

2.grep   'w[ea]ll'   file_name

在file_name文件中找到wall 或者是well 所在的所有行并显示
在这里插入图片描述

3.grep    'w[^e]ll'   file_name

在file_name文件中找到”非well” 所在的所有行并显示
在这里插入图片描述

4.grep   '^The'   file_name

在file_name文件中找到以The开头的所有行并显示(请与上一条命令进行区别)
在这里插入图片描述

5. grep       'goo..le'      file_name

在file_name文件中找到goo(任意字符)(任意字符)le的所有行并显示(即总共七个字符)
在这里插入图片描述
注意 : grep可以使用grep –color=always 来使得所查找的字符拥有特殊颜色,然后在执行source ~/.bashrc 来使得设置立即生效。
sed :实现数据的替换,删除,增加,选取等(以行为单位进行处理)

1.sed    '2,4d'    file_name

删除file_name文件的2到4行

2.sed  '2a liu .....\
 >shengxi is shuai !!!'  file_name

在第二行下新增这样两行
在这里插入图片描述

3.sed   '2,4c    ni han ma   a !!!'    file_name

把file_name文件的2到4行,替换为ni han ma a !!

4.sed   '2,5p' -n  file_name

把file_name文件的2到5行打印出来(不用-n 参数,就会重复输出2到5行)

5.sed  -i  's/a\[t\]\./p_temp->/g'     file_name 

把file_name文件中的a[t]. 全部替换为p_temp-> (-i 会直接将修改写入文件,[ ] 和 . 是特殊符号,需要用\来转义一下)

awk : 以字段为单位进行处理(其实就是把一行的数据分割,然后进行处理) 先介绍一些关于awk的用法:

1.$0   代表一整行的数据
 2.$1   代表第一个字段,用人的话来说就是第一列的数据
 3.$2   以此类推
 4.NF   每一行拥有的字段总数
 5.NR   目前处理的是第几行的数据
 6.FS   目前的分隔字符
 7.命令格式 :awk   '条件{命令1} 条件{命令2}...'   file_name

具体命令:

1. awk      'NR<6{print   $1  "\t"  $2 }'     file_name 

把file_name 文件中的前五行的第一列,第二列的数据列出来 (以[tab]或空格键分隔)
在这里插入图片描述在这里插入图片描述

2.awk   '{print "该行数据为" $0 "\t" "该行的字段总数为"  NF   "\t"  "目前这是第几行"  NR}'   file_name

在这里插入图片描述

3.  awk      'BEGIN{FS=":"}  $3<10{print $1 "\t" $3}'     /etc/passwd

把/etc/passwd文件的第一列与第三列列出来(BEGIN可以让我们自己设置的分隔字符立即生效)
/etc/passwd 文件中第一列是帐户,第三列是UID(就是用户ID)。该文件以 : 号分隔,一行代表一个用户,记录关于用户的各种信息

在这里插入图片描述特殊说明:

1.print 默认带有换行符,printf 没有

在这里插入图片描述

2.像\n ,\t,这种符号应该用双引号括起来 
  3.NR,NF等变量要用大写,并且不需要 $

三剑客命令总结:

-记住三个命令的运用形式
     grep    '字符'       文件
     sed     '命令'       文件
     awk    '条件{命令}'   文件
-死记一点,单引号内就是正则表达式的用法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值