标签:选项 sed -n 一个 执行 字符 自动 语句块 tar 后缀
① sed(替换)sed [options] ‘command‘ file(s)
sed [options] -f scriptfile file(s)
n 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。
g 表示行内全面替换。
p 表示打印行。
w 表示把行写入一个文件
替换文本中的字符串:
sed ‘s/book/books/‘ file
-n选项和p命令一起使用表示只打印那些发生替换的行:
sed -n ‘s/test/TEST/p‘ file
直接编辑文件选项-i,会匹配file文件中每一行的第一个book替换为books:
sed -i ‘s/book/books/g‘ file
已匹配字符串标记&
正则表达式 \w+ 匹配每一个单词,使用 [&] 替换它,& 对应于之前所匹配到的单词:
echo this is a test line | sed ‘s/\w+/[&]/g‘
[this] [is] [a] [test] [line]
②awk (取行)
awk脚本基本结构
awk ‘BEGIN{ print "start" } pattern{ commands } END{ print "end" }‘ file
一个awk脚本通常由:BEGIN语句块、能够使用模式匹配的通用语句块、END语句块3部分组成,这三个部分是可选的。任意一个部分都可以不出现在脚本中,脚本通常是被单引号或双引号中,例如:
awk ‘BEGIN{ i=0 } { i++ } END{ print i }‘ filename
awk "BEGIN{ i=0 } { i++ } END{ print i }" filename
awk的工作原理
awk ‘BEGIN{ commands } pattern{ commands } END{ commands }‘
第一步:执行BEGIN{ commands }语句块中的语句;
第二步:从文件或标准输入(stdin)读取一行,然后执行pattern{ commands }语句块,它逐行扫描文件,从第一行到最后一行重复这个过程,直到文件全部被读取完毕。
第三步:当读至输入流末尾时,执行END{ commands }语句块。
算术运算符
运算符 描述
标签:选项 sed -n 一个 执行 字符 自动 语句块 tar 后缀
原文地址:http://blog.51cto.com/13860358/2145308