Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

Riassumendo

Con la nostra conoscenza del per comando, ora applicheremo i miglioramenti finali al nostro sys_info_page sceneggiatura. Attualmente, il report_home_space la funzione assomiglia a questa:



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

}


Successivamente, lo riscriveremo per fornire maggiori dettagli per la home directory di ciascun utente e includere il numero totale di file e sottodirectory in ciascuna:



report_home_space() {

report_home_space() {


formato locale="%8s%10s%10s\n"

local i dir_list total_files total_dirs dimensione_totale nome_utente


if [[ $(id -u) -eq 0 ]]; quindi dir_list=/home/* user_name="Tutti gli utenti"

altro

dir_list=$HOME nome_utente=$UTENTE

fi


eco " Utilizzo dello spazio domestico ($user_name) " for i in $dir_list; do

total_files=$(trova $i -tipo f | wc -l) total_dirs=$(trova $i -tipo d | wc -l) total_size=$(du -sh $i | taglia -f 1)


eco " $i " eco " "

printf "$formato" "Dirs" "File" "Dimensione" printf "$formato" "----" "-----" "----"

printf "$formato" $dirs_totale $file_totali $dimensione_totale echo " "

fatto ritorno

}

formato locale="%8s%10s%10s\n"

local i dir_list total_files total_dirs dimensione_totale nome_utente


if [[ $(id -u) -eq 0 ]]; quindi dir_list=/home/* user_name="Tutti gli utenti"

altro

dir_list=$HOME nome_utente=$UTENTE

fi


eco " Utilizzo dello spazio domestico ($user_name) " for i in $dir_list; do

total_files=$(trova $i -tipo f | wc -l) total_dirs=$(trova $i -tipo d | wc -l) total_size=$(du -sh $i | taglia -f 1)


eco " $i " eco " "

printf "$formato" "Dirs" "File" "Dimensione" printf "$formato" "----" "-----" "----"

printf "$formato" $dirs_totale $file_totali $dimensione_totale echo " "

fatto ritorno

}


Questa riscrittura applica molto di ciò che abbiamo imparato finora. Testiamo ancora per il superutente, ma invece di eseguire l'insieme completo di azioni come parte del if, impostiamo alcune variabili usate in seguito in un ciclo for. Abbiamo aggiunto diverse variabili locali alla funzione e fatto uso di printf per formattare parte dell'output.


Il miglior sistema operativo cloud computing su OnWorks: