基礎指令碼例項

2022-09-12 21:51:25 字數 1951 閱讀 4159

1、顯示統計占用系統記憶體最多的程序,並排序。

top命令   按m以記憶體使用率排序

2、編寫指令碼,使用for和while分別實現192.168.0.0/24網段內,位址是否能夠ping通,若ping通則輸出"success!",若ping不通則輸出"fail!"

我們採用多個ping同時進行任務,乙個乙個ping太慢

首先我們先展示一下乙個乙個的ping的現象

哪怕是每次只ping一秒,都需要5分鐘才能ping完。所以採用後台併發執行

vim for_ping.sh

#!/bin/bash

netid=192.168.0

for hostip in ;do

&done

wait

chmod +x for_ping.sh

./for_ping.sh

現象

因為是併發執行,所以速度特別快,瞬間就能測試完所有的網路連通性

while 寫法

#!/bin/bash

hostip=1

netid=192.168.0

while [[ $hostip -le 254 ]];do

if ping -w1 -c1 $netid.$hostip &> /dev/null;then

echo $netid.$hostip  communication success! |tee -a hostlist.txt

else

echo $netid.$hostip  communication fail! |tee -a hostlist.txt

filet hostip++

done

3、每週的工作日1:30,將/etc備份至/backup目錄中,儲存的檔名稱格式 為「etcbak-yyyy-mm-dd-hh.tar.xz」,其中日期是前一天的時間

crontab -e

30 1 * * 1-5  /usr/bin/tar -cvf /backup/etcbak-`date -d "-1 day" +%f-%h` /etc/

4、工作日時間,每10分鐘執行一次磁碟空間檢查,一旦發現任何分割槽利用率高 於80%,就傳送郵件報警

測試:我們將警戒值改為10,來測試下

shell指令碼 指令碼學習例項

直接顯示的指令碼內容,執行結果,不再列出。1.判斷某一目錄是否存在,若不存在則新建此目錄 5 bin bash read p 請輸入乙個目錄 dirif d dir then echo 目錄已存在 else echo 目錄不存在,正在建立 mkdir p dir echo 建立完成 fi2.通過指令...

Linux shell 指令碼例項

1.寫乙個指令碼,利用迴圈計算10的階乘 2.寫乙個指令碼,執行後,列印一行提示 please input a number 要求使用者輸入數值,然後列印出該數值,然後再次要求使用者輸入數值。直到使用者輸入 end 停止 執行指令碼方法 nuhup sh route.sh 注意前面要用上nohup,...

shell指令碼例項

1.批量建立10個系統賬號test01 test10,並隨機設定8位數密碼 bin bash for i in seq w 10 do useradd test i echo random madsum cut c 8 tee a passwd.txt stdin test i done 2.在目錄...