sed、awk、grep入门

1. sed和awk的区别:如果文件是格式化的,即由分隔符分为多个字段(列)的,优先使用awk。awk适合按列(域)操作,sed适合按行操作。awk适合对文件的抽取整理,sed适合对文件的编辑。

2. sed没有破坏性,它不会修改文件,除非使用shell重定向来保存输出结果。默认情况下,所有输出行都被打印到屏幕上。

1. sed '1,3d' myfile               #删除myfile中的第1~3行,但是不会改变源文件,只会输出到屏幕
2. sed '/Tom/d' file               #删除所有包含模式Tom的行
3. sed '/Tom/!d' file              #删除所有没有包含模式Tom的行
4. sed -n '/[Jj]ohn/p' myfile      #只打印myfile中与模式John或john匹配的行
5. sed '1,3d' myfile > temp        #删除文件myfile中的第1~3行后把剩下的行重定向到temp
6. sed '/g..k/p' file              #查找包含字母g,后跟两个任意字符,再跟字母k的行
7. sed -n '/gick/p' file           #默认情况下,sed把所有输出行都打印在标准输出上。如果某一行匹配到模式,命令p将指示sed再次打印改行。 选项-n取消sed的默认打印动作。选项-n和p配合使用时,只会打印满足匹配模式的行。
8. sed 's/gick/tim/g' file         #s命令用于替换。g表示在行内进行全局替换,否则只替换每一行的第一个gick为tim。
9. sed -n 's/^gick/tim/p' file      #选项-n与p配合,^表示行首。替换那些行首是gick的行
10. sed -e '1,3d' -e 's/gick/tim/' file      #选项-e用于多重编辑。第一重编辑删除1~3行。第二重编辑将gick替换为tim。两次命令的顺序会影响结果。
11. sed -n '/gick/w file1' file    #w命令是写命令。file1文件中所有包含模式gick的行都被写到文件file中。

3. awk以逐行方式扫描文件(或输入),从第一行到最后一行,以查找匹配某个特定模式的文本行,并对这些文本行执行指定动作。

1. awk '/gick/' file                     #打印出所有包含模式gick的行。
2. awk '{print $1}' file                 #打印出file的第一个字段,字段从行的左端开始,以空白符分隔。
3. awk '/gick/{print $1, $2}' file       #当文件的某一行含有模式gick时,打印改行的头两个字段。
4. cat file.c | awk '/gick/'             #将file.c中含有模式gick的行打印出来。
5. awk '/^[gt]/{print $1}' file          #将file中每行的首字母是g或者t的行的第一个字段打印出来。
6. awk '$3 == 5342' file                 #如果file中某行的第三个字段的值等于5342,则打印改行。
7. awk '$4 > 60 {print $1 > "jige.txt"}' file       #如果file中第4个字段的值大于60,则输出改行的第一个字段重定向到jige.txt中。注意:将awk命令输出重定向到的文件必须用双引号括起来。
8. awk '{print $1, $2 | "sort -r +1 -2 +0 -1"}' file       #注意双引号的作用。

4. grep命令在文件中查找指定的正则表达式,并且打印所有包含该表达式的行。

1. grep gick /etc/passwd              #在文件/etc/passwd中查找模式gick,并打印改行内容。

5. test命令:https://www.jb51.net/article/112397.htm

6.read命令:https://blog.csdn.net/loongembedded/article/details/52679028

7.sort命令:https://www.jb51.net/article/109155.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值