我有一个脚本。
我想获取所有常规用户,/etc/shadow
例如影子文件中第二个术语以$
或开头的所有用户!$
。
我的模式是
sudo getent shadow | awk -F: '$2 ~ /^$/ || /^!$/ {print $1}'
現在它不起作用。
答案1
您需要转义$
,因为它是“行尾”的特殊字符,与^
“行首”非常相似。
sudo getent shadow | awk -F: '$2 ~ /^\$/ || $2 ~ /^!\$/ {print $1}'
答案2
所有设置了密码的用户都可以这样列出:
getent shadow | egrep '^[^:]*:[*!]:' -v | cut -f1 -d: