OnWorks Linux و Windows Online WorkStations

الشعار

استضافة مجانية على الإنترنت لمحطات العمل

<السابق | المحتويات | التالي>

وتلخيصا

مع إضافة المعلمات الموضعية ، يمكننا الآن كتابة نصوص وظيفية إلى حد ما. بالنسبة للمهام البسيطة المتكررة ، تتيح المعلمات الموضعية كتابة وظائف صدفة مفيدة جدًا يمكن وضعها في حساب المستخدم .bashrc ملف.

الأهداف و sys_info_page لقد نما البرنامج من حيث التعقيد والتطور. فيما يلي قائمة كاملة ، مع إبراز أحدث التغييرات:



#! / بن / باش


# sys_info_page: برنامج لإخراج صفحة معلومات النظام


PROGNAME = $ (basename $ 0)

TITLE = "تقرير معلومات النظام لـ $ HOSTNAME" CURRENT_TIME = $ (التاريخ + "٪ x٪ r٪ Z")

TIMESTAMP = "تم توليده $ CURRENT_TIME ، بواسطة $ USER"


report_uptime () {قطة << - _EOF_

جاهزية النظام

$ (الجهوزية)

_EOF_ عودة

#! / بن / باش


# sys_info_page: برنامج لإخراج صفحة معلومات النظام


PROGNAME = $ (basename $ 0)

TITLE = "تقرير معلومات النظام لـ $ HOSTNAME" CURRENT_TIME = $ (التاريخ + "٪ x٪ r٪ Z")

TIMESTAMP = "تم توليده $ CURRENT_TIME ، بواسطة $ USER"


report_uptime () {قطة << - _EOF_

جاهزية النظام

$ (الجهوزية)

_EOF_ عودة


}


report_disk_space () {cat << - _EOF_

استخدام مساحة القرص

$ (df -h)

_EOF_ عودة

}


Report_home_space () {

إذا [[$ (id -u) -eq 0]]؛ ثم القط << - _EOF_

استخدام مساحة المنزل (كل المستخدمين)

$ (du -sh / home / *)

_EOF_

آخر

قطة << - _EOF_

استخدام المساحات المنزلية ($ USER)

$ (du -sh $ HOME)

_EOF_

عودة fi

}


الاستخدام () {

صدى "$ PROGNAME: الاستخدام: إرجاع $ PROGNAME [-f file | -i]"

}


write_html_page () {cat << - _EOF_

العنوان $

العنوان $

TIMESTAMP دولار

$ (report_uptime)

$ (report_disk_space)

$ (report_home_space)

_EOF_ عودة

}


# خيارات سطر الأوامر العملية

}


report_disk_space () {cat << - _EOF_

استخدام مساحة القرص

$ (df -h)

_EOF_ عودة

}


Report_home_space () {

إذا [[$ (id -u) -eq 0]]؛ ثم القط << - _EOF_

استخدام مساحة المنزل (كل المستخدمين)

$ (du -sh / home / *)

_EOF_

آخر

قطة << - _EOF_

استخدام المساحات المنزلية ($ USER)

$ (du -sh $ HOME)

_EOF_

عودة fi

}


الاستخدام () {

صدى "$ PROGNAME: الاستخدام: إرجاع $ PROGNAME [-f file | -i]"

}


write_html_page () {cat << - _EOF_

العنوان $

العنوان $

TIMESTAMP دولار

$ (report_uptime)

$ (report_disk_space)

$ (report_home_space)

_EOF_ عودة

}


# خيارات سطر الأوامر العملية

صورة

وتلخيصا


تفاعلي =

اسم الملف =


بينما [[-n $ 1]] ؛ فعل حالة $ 1 في

-f | --ملف)

نقل

اسم الملف = 1 دولار

;;

تفاعلي =

اسم الملف =


بينما [[-n $ 1]] ؛ فعل حالة $ 1 في

-f | --ملف)


-i | - تفاعلي) تفاعلي = 1

;;

-ح | --مساعدة) الخروج من الاستخدام

;;

*) الاستخدام> & 2

خروج 1

;;

تحول esac

فعل


# الوضع التفاعلي


إذا [[-n $ Interactive]]؛ ثم بينما صحيح فعل

read -p "أدخل اسم ملف الإخراج:" filename if [[-e $ filename]]؛ من ثم

read -p "'$ filename' موجود. هل تريد الكتابة فوقه؟ [y / n / q]>" case $ REPLY في

ص | ص) فاصل

;;

س | ف) صدى "تم إنهاء البرنامج". خروج

;;

*) استمر

;;

ESAC

إليف [[-z $ filename]] ؛ ثم تابع

آخر

استراحة

fi

فعل

fi


# إخراج صفحة أتش تي أم أل


إذا [[-n $ filename]] ؛ من ثم

إذا المس $ filename && [[-f $ filename]]؛ ثم write_html_page> $ filename

آخر

-i | - تفاعلي) تفاعلي = 1

;;

-ح | --مساعدة) الخروج من الاستخدام

;;

*) الاستخدام> & 2

خروج 1

;;

تحول esac

فعل


# الوضع التفاعلي


إذا [[-n $ Interactive]]؛ ثم بينما صحيح فعل

read -p "أدخل اسم ملف الإخراج:" filename if [[-e $ filename]]؛ من ثم

read -p "'$ filename' موجود. هل تريد الكتابة فوقه؟ [y / n / q]>" case $ REPLY في

ص | ص) فاصل

;;

س | ف) صدى "تم إنهاء البرنامج". خروج

;;

*) استمر

;;

ESAC

إليف [[-z $ filename]] ؛ ثم تابع

آخر

استراحة

fi

فعل

fi


# إخراج صفحة أتش تي أم أل


إذا [[-n $ filename]] ؛ من ثم

إذا المس $ filename && [[-f $ filename]]؛ ثم write_html_page> $ filename

آخر


صدى "$ PROGNAME: لا يمكن كتابة الملف '$ filename'"> & 2 exit 1

فاي آخر

write_html_page

fi

صدى "$ PROGNAME: لا يمكن كتابة الملف '$ filename'"> & 2 exit 1

فاي آخر

write_html_page

fi


لم ننتهي بعد. لا يزال هناك المزيد من الأشياء التي يمكننا القيام بها والتحسينات التي يمكننا إجراؤها.


أفضل الحوسبة السحابية لنظام التشغيل في OnWorks: