awk
用法:
awk -F 分隔符 BEGIN{}{}END{} FILENAME 默认以空格为分隔符
BEGIN和END可以忽略不写。
NR #显示行数
NF #列数
以冒号为分隔符,每一行的列数。
以bash结尾的行的列数。
打印出以bash结尾的行。
FILENAME #遇到符合条件的行就打印一次文件名称本身
westos #westos变量值
“westos” #westos字符串
/bash$/ 条件,表示以bash结尾的
/条件1|条件2/ 条件1或者条件2
/条件1/||/条件2/ 条件1或者条件2
/条件1/&&/条件2/ #条件1并且条件2
$0 #所有的列
$1 #第一列
$2 #第二列
$3 #第三列
$1,$7 #第一列和第七列
例:找出 /etc/passwd 文件中的第六列没有home关键字并且以bash结尾的行,显示第一列。
awk -F : ‘KaTeX parse error: Expected 'EOF', got '&' at position 10: 6!~/home/&̲&/bash/{print}’ /etc/passwd
$7~/bash/ #第七列是的行
$7!~/bash/ #第七列不是bash的
注意:
在 使用awk 时尽量使用单引号,因为在awk中单引号才能使用变量功能。