Linux学习笔记(正则表达式-2)

在1.txt第10行到最后一行前面加’champly:’

eg:sed  -r  '10,$s/(.*)/champly:\1/g' 1.txt

 

sed中,使用\u表示大写,\l表示小写

 

1. 把每个单词的第一个小写字母变大写:

sed 's/\b[a-z]/\u&/g' filename

 

2. 把所有小写变大写:

sed 's/[a-z]/\u&/g' filename

 

3. 大写变小写:

sed 's/[A-Z]/\l&/g' filename

 

awk:

         -F:指定分割符

                   以:作为分隔分割第3段:

awk  -F  ':'  '{print NR:”:"$3}'  1.txt

         NR:是行号的意思

NF:表示段

实现grep的功能:

连续匹配:$0表示整行

awk  -F  ':'  '$3<$4  {print  NR":"$0}' 1.txt:

改变某个段的值:awk  -F  ':''OFS=":",  $7=$3+$4  {print  $0}'  1.txt

其中OFS代表分割符,必须加逗号

可以写循环:awk  -F  ':'  '{(sum=sum+$3)};  END  {print sum}'  1.txt

分号不要忘了,END表示循环结束

扩展:

$NF:表示最后一段:awk  -F  ':'  ' {print  $NF}'  1.txt

2015年4月13日

by:champly 

发布了44 篇原创文章 · 获赞 7 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章