一、編寫腳本/root/bin/systeminfo.sh,顯示當前主機系統信息,包括主機名,IPv4地址,操做系統版本,內核版本,CPU型號,內存大小,硬盤大小
答:echo -e "My hostname is hostname
"
echo -e "My ip is ifconfig | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}'|head -1
"
echo -e "OS version is cat /etc/redhat-release
"
echo -e "kernel version is uname -r
"
echo -e "CPU type islscpu|grep 'Model name'|tr -s " "|cut -d: -f2
"
echo -e "Mem total is cat /proc/meminfo |head -1|cut -d: -f2|tr -d ' '
"
echo -e "Disk is lsblk | grep -Eo "[0-9]+G"|sort -nr|head -1
" ide
二、編寫腳本/root/bin/backup.sh,可實現每日將/etc/目錄備份到/root/etcYYYY-mm-dd中
答:cp -av /etc/ /data/etcdate +%F
spa
三、編寫腳本/root/bin/disk.sh,顯示當前硬盤分區中空間利用率最大的值
答:df | grep /dev/sd| tr -s " "|cut -d" " -f5|sort -nr|head -1操作系統
四、編寫腳本/root/bin/links.sh,顯示正鏈接本主機的每一個遠程主機的IPv4地址和鏈接數,並按鏈接數從大到小排序
答:cat ss.log | tr -s " " :| cut -d: -f4|grep ^[0-9]|sort -nr|uniq -ccode
一、編寫腳本/root/bin/sumid.sh,計算/etc/passwd文件中的第10個用戶和第20用戶的ID之和
答:ID10=cat /etc/passwd|head -10|tail -1|cut -d: -f3
ID20=cat /etc/passwd|head -20|tail -1|cut -d: -f3
ID=$[$ID10+$ID20]
echo -e "第十個用戶的ID爲:$ID10"
echo -e "第二十個用戶的ID爲:$ID20"
echo -e "和爲:$ID"排序
二、編寫腳本/root/bin/sumspace.sh,傳遞兩個文件路徑做爲參數給腳本,計算這兩個文件中全部空白行之和
答:FILE1=cat $1 | grep ^[[:space:]]*[[:space:]]$|wc -l
ip
echo -e "文件一的空白行爲:"$FILE1"行"內存
FILE2=cat $2 | grep ^[[:space:]]*[[:space:]]$|wc -l
it
echo -e "文件二的空白行爲:"$FILE2"行"io
FILE="$[$FILE1+$FILE2]"class
echo -e "文件一和文件二的總空白行爲:"$FILE"行"
三、編寫腳本/root/bin/sumfile.sh,統計/etc, /var, /usr目錄中共有多少個一級子目錄和文件
答:ETCDIR=ls -la /etc | grep ^d | wc -l
echo -e "/etc中一級目錄有"$ETCDIR"個"
ETCFILE=ls -la /etc | grep -v ^d|wc -l
echo -e "/etc中文件有"$[$ETCFILE-1]"個"
VARDIR=ls -la /var | grep ^d | wc -l
echo -e "/var中一級目錄有"$VARDIR"個"
VARFILE=ls -la /var | grep -v ^d|wc -l
echo -e "/var中文件有"$[$VARDILR-1]"個"
USRDIR=ls -la /usr | grep ^d | wc -l
echo -e "/usr中一級目錄有"$USRDIR"個"
USRFILE=ls -la /usr | grep -v ^d|wc -l
echo -e "/usr中文件有"$[$USRFILE-1]"個"