AWK [-F xxx] “{command/condition;command2....}” file2parse
awk '{pattern + command}' {filenames}
awk " patten {pattern commmd}"
pattern {action} 如果模式匹配,则执行操作
pattern 如果模式匹配,则打印记录(在不指定动作的情况下,默认会打印一条记录)
{action} 没有模式,则针对每条记录,执行操作
任何awk语句都是由模式和动作组成。在一个awk脚本中可能有许多语句,模式部分决定动作合适触发及触发事件。处理即是对数据进行操作。如果省略模式部分,动作将时刻保持执行状态,也就是说,如果模式部分省略了,则操作会针对每条记录无条件的执行。
awk语句中,用/······/来界定正则表达式,用‘ ’单引号来定界语句,实际动作在大括号{}内指明。通常都是:'{ action1;action2 }',{}中,如果有多条语句,例如print if 以及赋值,等,就必须用分号;来间隔,不能用空格作为语句动作分隔符。
模式可以是任何条件语句或者符合语句或者正则表达式。
xxx为域分割符,没有-F选项时默认为空格。可以指定为# *等等。
转义用/
(awk "\$2==\"$module\" {print \$1}" /proc/devices)
awk中双引号“ ”中的内容允许$符值的替换,单引号' '不允许替换。
分析 外围的“ ”界定 "pattern {} " pattern 部分 \$2==\"$module\"