这两天awk用得很欢,的确是神器啊。这里记下一些容易忽略的点:
-
修改
RS
变量可以指定记录分隔符,指定ORS
变量可以指定输出记录分隔符(print后自动打印的字符) -
sub
函数直接作用在变量上,不会返回替换后的值。如print sub(/a/,"b","abc")
不会输出"bbc"
-
getline var < "/dev/tty"
可以从终端读取输入到变量var
中 -
数组采用键值对方式存取,如
iamarray['hello']='word'
定义了一个键值对('hello','word')
,可以采用语法x in iamarray
来判断x
是否为iamarray
中的一个键,判断不在已有的键里面用(x in iamarray)==0