nel file /etc/passwd
abbiamo il cosiddetto GECOS fields
(che sta per "Sistema operativo completo elettrico generale"), cioè:
username:password:userid:groupid:gecos:home-dir:shell
Dove GECOS
sono divisi come:
:FullName,RoomAddress,WorkPhone,HomePhone,Others:
E Others
sono divisi in tutte le virgole che vuoi:
:FullName,RoomAddress,WorkPhone,HomePhone,Other1,Other2,Other3:
Nelle man chfn
pagine si può leggere:
L'altro campo viene utilizzato per memorizzare le informazioni contabili utilizzate da altre applicazioni.
Ora, per uno sviluppatore di applicazioni (mi interessa C language
, system calls
e / o bash script
), che è il modo migliore per afferrare queste informazioni?
E considerando solo l' Bash
ambiente, dato che il finger
comando non può visualizzare i others
campi (o almeno non vedo come), quali sono gli altri comandi che possono? So che chfn
non solo mostrano, ma permettono loro di essere cambiati. Che cosa succede se si deve semplicemente emetterlo stdout
?
awk
, sed
, cat
, grep
, cut
, e simili). Inoltre, come le applicazioni potrebbero leggere questo? Qualche esempio di un'applicazione che utilizza il other
campo?
awk -F ":" '{print $5}' /etc/passwd
... quindi è possibile elaborare nuovamente la stringa (è possibile eseguire anche una sola chiamata tramitesplit
il campo con la funzione split.