首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

sed与awk初学者的笔记-第一章,第二章

2012-07-29 
sed与awk菜鸟的笔记--第一章,第二章前言:?一直想好好学学sed和awk,感觉真的太强大了,虽然在工作中用的不是

sed与awk菜鸟的笔记--第一章,第二章

前言:

?

一直想好好学学sed和awk,感觉真的太强大了,虽然在工作中用的不是很多,但由于崇拜,决定成为sed与awk脚本的菜鸟程序员.

?

既然要学习,就要记好笔记,下面把觉得很重要的精髓记下来.

?

看了一些资料,值得推荐的一本书<<sed与awk>>,我看的是 oreilly sed与awk(第二版),因为上网电子书只找到这版了,哈哈!

?

?

第一章是讲sed与awk怎么怎么好,让你爱上她.我已经爱上她了,所以没什么要说的.

?

第二章讲的是基本操作.由于以前写过简单的脚本,所以只是简单的记一下.

?

sed[-e] 'instruction' file :这种方式是在命令行执行sed脚本的方式,单引号里面是要执行的动作

sed -f script file :这种方式是将脚本写入script文件中,用-f参数指定执行它,然后对file的操作

?

在命令行给出多指令方法:

1.用-e参数?

2.用分号分隔

-n:不自动输出

p:打印影响的行

//用AA替换aa并只显示影响的行

$sed -n ?'s/aa/AA/p' list ? ?#只用AA替换第一个aa,并只显示影响的行

$sed -n ?'s/aa/AA/pg' list ? #用AA替换list中的所有aa,并只显示影响的行

$sed -n ?'s/aa/AA/p' -e 's/aa/AA/p' list ?#用AA替换前两个aa,并只显示影响的行

?

$awk '/AA/' list ?#打印出匹配AA的所有行

$awk '/AA/ {print $1}' list ?#打印出匹配AA的所有行中的第一个字段

$awk -F, '/AA/ {print $1,$2}' list ?#打印出匹配AA的所有行中以逗号为分隔符的第一个字段和第二个字段

$awk '/AA/ {print $1;print $2}' list ?#打印出匹配AA的所有行中的第一个字段和第二个字段,字段间换行

?

热点排行