awk -F: 'NR == FNR {shells[$0]; next} $NF in shells' /etc/{shells,passwd}
ou grep, mas é menos preciso
grep -Ff /etc/shells /etc/passwd
Como posso imprimir os usuários reais (em um script, se possível)? Eu sei que os usuários reais têm um shell de login válido e sei que o shell de login válido pode ser encontrado em / etc / shells. Mas eu não sei como levar os usuários (de / etc / passwd) que possuem o respectivo shell.
awk -F: 'NR == FNR {shells[$0]; next} $NF in shells' /etc/{shells,passwd}
ou grep, mas é menos preciso
grep -Ff /etc/shells /etc/passwd
Tags shell-script