0

/ etc / passwdをループして、すべてのユーザー名とアカウントのステータスを出力するスクリプトを作成したいと思います。

while read line; do
print username to field1 in user.txt
print status active/disabled in field2 in user.txt
done</etc/passwd
4

1 に答える 1

0
while IFS=: read user status placeholder; do
    [[ $status == x ]] && active=active || active=inactive
    echo "$user $active" >> user.txt
done < /etc/passwd
cat user.txt

しかし、2 番目の列がx暗号化されたパスワードを持っているユーザーである場合、それはアクティブまたは非アクティブを表していません...

見る

man 5 passwd

あなたは見るべきです

account expiration date

man 5 shadow
于 2013-02-25T03:58:20.793 に答える