如果一個(gè)系統(tǒng)管理員花費(fèi)大量的時(shí)間解決問(wèn)題以及做重復(fù)的工作,你就應(yīng)該懷疑他這么做是否正確。換句話說(shuō),一個(gè)高效的系統(tǒng)管理員/工程師應(yīng)該制定一個(gè)計(jì)劃使得其盡量花費(fèi)少的時(shí)間去做重復(fù)的工作,以及通過(guò)使用本系列中第三部分 使用 Linux 工具集監(jiān)視系統(tǒng)活動(dòng)報(bào)告 介紹的工具來(lái)預(yù)見(jiàn)問(wèn)題。因此,盡管看起來(lái)他/她沒(méi)有做很多的工作,但那是因?yàn)?shell 腳本幫助完成了他的/她的大部分任務(wù),這也就是本章我們將要探討的東西。
簡(jiǎn)單的說(shuō),shell 腳本就是一個(gè)由 shell 一步一步執(zhí)行的程序,而 shell 是在 Linux 內(nèi)核和最終用戶之間提供接口的另一個(gè)程序。
默認(rèn)情況下,RHEL 7 中用戶使用的 shell 是 bash(/bin/bash)。如果你想知道詳細(xì)的信息和歷史背景,你可以查看這個(gè)維基頁(yè)面。
關(guān)于這個(gè) shell 提供的眾多功能的介紹,可以查看 man 手冊(cè),也可以從 (Bash 命令)處下載 PDF 格式。除此之外,假設(shè)你已經(jīng)熟悉 Linux 命令(否則我強(qiáng)烈建議你首先看一下 Tecmint.com 中的文章 從新手到系統(tǒng)管理員指南 ),F(xiàn)在讓我們開(kāi)始吧。
為了方便,首先讓我們新建一個(gè)目錄用于保存我們的 shell 腳本:
#mkdir scripts
#cd scripts
然后用喜歡的文本編輯器打開(kāi)新的文本文件 system_info.sh
。我們首先在頭部插入一些注釋以及一些命令:
#!/bin/bash
# RHCE 系列第四部分示例腳本
#該腳本會(huì)返回以下這些系統(tǒng)信息:
#-主機(jī)名稱:
echo-e "\e[31;43m***** HOSTNAME INFORMATION *****\e[0m"
hostnamectl
echo""
#-文件系統(tǒng)磁盤空間使用:
echo-e "\e[31;43m***** FILE SYSTEM DISK SPACE USAGE *****\e[0m"
df-h
echo""
#-系統(tǒng)空閑和使用中的內(nèi)存:
echo-e "\e[31;43m ***** FREE AND USED MEMORY *****\e[0m"
free
echo""
#-系統(tǒng)啟動(dòng)時(shí)間:
echo-e "\e[31;43m***** SYSTEM UPTIME AND LOAD *****\e[0m"
uptime
echo""
#-登錄的用戶:
echo-e "\e[31;43m***** CURRENTLY LOGGED-IN USERS *****\e[0m"
who
echo""
#-使用內(nèi)存最多的5個(gè)進(jìn)程
echo-e "\e[31;43m***** TOP 5 MEMORY-CONSUMING PROCESSES *****\e[0m"
ps-eo %mem,%cpu,comm --sort=-%mem |head-n 6
echo""
echo-e "\e[1;32mDone.\e[0m"
然后,給腳本可執(zhí)行權(quán)限:
#chmod+x system_info.sh
運(yùn)行腳本:
./system_info.sh
注意為了更好的可視化效果各部分標(biāo)題都用顏色顯示:
服務(wù)器監(jiān)視 Shell 腳本
顏色功能是由以下命令提供的:
echo-e "\e[COLOR1;COLOR2m\e[0m"
其中 COLOR1 和 COLOR2 是前景色和背景色(Arch Linux Wiki 有更多的信息和選項(xiàng)解釋), 是你想用顏色顯示的字符串。
2015職稱計(jì)算機(jī)考試書(shū)PowerPoint2007中 .. 定價(jià):¥45 優(yōu)惠價(jià):¥42 更多書(shū)籍 | |
2015年全國(guó)職稱計(jì)算機(jī)考試教材(2007模 .. 定價(jià):¥225 優(yōu)惠價(jià):¥213 更多書(shū)籍 |