您的位置:首页 > 其它

awk学习

2016-03-09 00:00 225 查看
1.close()函数,用于关闭打开的文件和管道。在使用另一个管道时必须关闭已打开的管道。eg:close("who")

2.getline 读取一个行,可以是文件,管道,标准输入。eg:getline < "data" ,从文件中读取一行。 getline < "-",从标准输入读取。

将输入传给另一个变量eg:getline name < "-",将输入赋给一个变量不会影响当前行,也就是对$0没有影响。 NF没有变化,但

NR和FNR递增了。

3. system()函数执行一个表达书给出的命令eg:if (system("mkdir dale") != 0){

print "Command Failed!"

}

4.ex命令行,在vi中,:g /a/,/b/ move /c/ ,把a到b的行移动到c的后面,其中/a/ /b/ /c/的后面可以加上[-+]n ,/a/+2 表示匹配a的那一行上再加上两行,就是从a下面两行开始。

5.在ex中,:%s/\<[Ww]ord\>/[new]/g,其中[]的第二是没有特殊含义的,只是普通字符而已。

6.在ex中,删除每一行开头的空白行 : %s/^ *\(.*)\/\1/; 删除每一行结尾的空白行:%s/^(.*) *$/\1/,由于有贪婪匹配的问题,其在匹配结尾的问题很大。不适合使用。

7.:g/^J/m$,将J开头的行移到文件的结尾若爸$换为n(number),移到第n行。

8.systime()主要应用于写入日志记录的时间戳。使用strftime()可以把时间戳生成易读的格式。eg:strftime("%y-%m-%d %H:%M",first[contact])
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: