-
在当前用户中打印所有普通用户及其家目录(/etc/passwd)
awk -F ':' '$3>=1000{print $1,$(NF-1)}' /etc/passwd
: 用户id大于等于1000为普通用户 -
给文件前五行添加#号
awk ' NR==1,NR==5{print "#",$0}' /etc/passwd
或者awk 'NR<6{print "#",$0}'
-
用空格和冒号分隔文件,并删除空行
awk -F '[ :]' '!/^$/{print $0}' file.txt
: [ :] 来以空格和:分隔文件,/^$/匹配空行,!表示取反 -
针对某一字段匹配正则
awk -F '[ :]' '$2~/^Tom/{print $0}' file.txt
: x~/正则/表示对某一字段匹配正则 -
删除文件的空白行
awk '!/^$/{print $0}' file.txt