<Precedenti | Contenuti | Succ.>
Riassumendo
Abbiamo iniziato questo capitolo con una domanda. Come potremmo rendere il nostro? sys_info_page script rileva se l'utente ha il permesso di leggere tutte le directory home? Con la nostra conoscenza di if, possiamo risolvere il problema aggiungendo questo codice a report_home_space funzione:
report_home_space() {
if [[ $(id -u) -eq 0 ]]; poi gatto <<- _EOF_
Utilizzo dello spazio domestico (tutti gli utenti)
$(du -sh /home/*)
_EOF_
altro
gatto <<- _EOF_
Utilizzo dello spazio domestico ($USER)
$(du -sh $HOME)
_EOF_
fi ritorno
}
report_home_space() {
if [[ $(id -u) -eq 0 ]]; poi gatto <<- _EOF_
Utilizzo dello spazio domestico (tutti gli utenti)
$(du -sh /home/*)
_EOF_
altro
gatto <<- _EOF_
Utilizzo dello spazio domestico ($USER)
$(du -sh $HOME)
_EOF_
fi ritorno
}
Valutiamo l'output di id comando. Con il -u opzione, id emette il numero ID utente numerico dell'utente effettivo. Il superutente è sempre zero e ogni altro utente è un numero maggiore di zero. Sapendo questo, possiamo costruire qui due diversi documenti, uno che sfrutta i privilegi di superutente e l'altro, limitato alla home directory dell'utente.
Ci prendiamo una pausa dal sys_info_page programma, ma non preoccuparti. Tornerà. Nel frattempo, tratteremo alcuni argomenti di cui avremo bisogno quando riprenderemo il nostro lavoro.