Portál AbcLinuxu, 12. května 2025 03:01
[root@soban /etc]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin ........
To, ze neumis otevrit passwd
pomijim, jak chces napsat skript kdyz neumis otervrit soubor? Ale chtel se rict tohle: v passwd
mas jako uzivatele taky polozky typu daemon, lp, apod. coz asi nechces. Lepsi bude spis
ls -1 /home/
Jak napsat skript (kdyz uz otevres soubor) se dozvis treba tady.
awk -F: '{ if ($3>=500 && $3<65000) print $1; }' /etc/passwd
Místo 500 a 65000 je potřeba dosadit hodnoty podle toho, v jakém rozsahu jsou "reální" uživatelé.
Loginy z /etc/passwd vypreparujete pomocí
cut -d: -f1 /etc/passwd | sort > /tmp/passwd.tmp
Obsah adresáře mail pomocí
ls /var/spool/mail > /tmp/mail.tmp
Nakonec oba soubory porovnáte
diff /tmp/passwd.tmp /tmp/mail.tmp
(Nejsem si jistý, co je obsahem adresáře /var/spool/mail. Předpokládal jsem, že mailboxy pojmenované podle loginu.)
cat soubor | while read radka; do ...delej neco s prectenou radkou ktera je v $radka... done
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.