OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

סיכום

עם הידע שלנו על ל פקודה, כעת ניישם את השיפורים האחרונים על שלנו sys_info_page תַסרִיט. נכון לעכשיו, ה report_home_space הפונקציה נראית כך:



report_home_space () {

if [[ $(id -u) -eq 0 ]]; ואז חתול <<- _EOF_

ניצול שטח ביתי (כל המשתמשים)

$(du -sh /home/*)

_EOF_

אחר

חתול <<- _EOF_

ניצול שטח ביתי ($USER)

$(du -sh $HOME)

_EOF_

fi לחזור

}

report_home_space () {

if [[ $(id -u) -eq 0 ]]; ואז חתול <<- _EOF_

ניצול שטח ביתי (כל המשתמשים)

$(du -sh /home/*)

_EOF_

אחר

חתול <<- _EOF_

ניצול שטח ביתי ($USER)

$(du -sh $HOME)

_EOF_

fi לחזור

}


לאחר מכן, נשכתב אותה כדי לספק פרטים נוספים עבור ספריית הבית של כל משתמש, ונכלול את המספר הכולל של קבצים ותת-ספריות בכל אחת מהן:



report_home_space () {

report_home_space () {


local format="%8s%10s%10s\n"

local i dir_list total_files total_dirs total_size user_name


if [[ $(id -u) -eq 0 ]]; ואז dir_list=/home/* user_name="כל המשתמשים"

אחר

dir_list=$HOME user_name=$USER

fi


הד" ניצול שטח ביתי ($user_name) " for i ב-$dir_list; עשה

total_files=$(find $i -type f | wc -l) total_dirs=$(find $i -type d | wc -l) total_size=$(du -sh $i | cut -f 1)


הד" $i "הד" "

printf "$format" "Dirs" "קבצים" "גודל" printf "$format" "----" "-----" "----"

printf "$format" $total_dirs $total_files $total_size echo " "

סיים להחזיר

}

local format="%8s%10s%10s\n"

local i dir_list total_files total_dirs total_size user_name


if [[ $(id -u) -eq 0 ]]; ואז dir_list=/home/* user_name="כל המשתמשים"

אחר

dir_list=$HOME user_name=$USER

fi


הד" ניצול שטח ביתי ($user_name) " for i ב-$dir_list; עשה

total_files=$(find $i -type f | wc -l) total_dirs=$(find $i -type d | wc -l) total_size=$(du -sh $i | cut -f 1)


הד" $i "הד" "

printf "$format" "Dirs" "קבצים" "גודל" printf "$format" "----" "-----" "----"

printf "$format" $total_dirs $total_files $total_size echo " "

סיים להחזיר

}


שכתוב זה מיישם הרבה ממה שלמדנו עד כה. אנחנו עדיין בודקים עבור משתמש העל, אבל במקום לבצע את סט הפעולות השלם כחלק מה- if, הגדרנו כמה משתנים המשמשים מאוחר יותר בלולאת for. הוספנו מספר משתנים מקומיים לפונקציה ועשינו בהם שימוש הדפס כדי לעצב חלק מהפלט.


מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: