標籤:使用 project source 格式 average 簡訊 退出 get 項目
1. 寫一個指令碼,實現大量新增20個使用者,使用者名稱為user1-20,密碼為user後面跟5個隨機字元
2. Shell實用案例:批量產生隨機字元檔案
3.請用至少兩種
方法實現! 將以上檔案名稱中的oldboy全部改成oldgirl(用for
迴圈實現),並且html改成大寫。
[[email protected] ~]# ll /oldboy/
total 0
-rw-r--r-- 1 root root 0 Jul 20 20:45 aebccciiaj_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 afffebcchb_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 dbccddabbj_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 ehbdaedach_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 fbaacihehi_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 fffabecgbc_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 ffghcffegb_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 hffbhfgdff_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 jadafhbaaf_oldboy.HTML
-rw-r--r-- 1 root root 0 Jul 20 20:45 jgfebjbebd_oldboy.HTML
4.寫一個指令碼,實現判斷10.0.0.0/24網路裡,當前線上使用者的IP有哪些
5.解決DOS攻擊生產案例
6.請用至少兩種方法實現!寫一個指令碼解決DOS攻擊生產案例。提示:根據web日誌或者或者網路連接數,監控當某個IP並發串連數或者短時內PV達到100
,即調用防火牆命令封掉對應的IP,監控頻率每隔3分鐘。防火牆命令為:iptables -A INPUT -s 10.0.1.10 -j DROP。
7. shell建立清理日誌指令碼apache日誌為例
8.監控CPU和記憶體的使用方式
9.Shell編程指令碼:列印九九乘法表
10.利用bash for迴圈列印下面這句話中字母數不大於6的單詞。
I am oldboy teacher welcome to oldboy trainingclass
11. 如何?對MySQL資料庫進行分庫加分表備份,請用指令碼實現。
12. Shell之mysql自動備份指令碼
13. Shell指令碼:磁碟監控
14. 監控MySQL主從同步是否異常並警示企業案例類比
監控MySQL主從同步是否異常,如果異常,則傳送簡訊或者郵件給管理員。提示:如果沒主從同步環境,可以用下面文本放到檔案裡讀取來類比:
階段1:開發一個守護進程指令碼每30秒實現檢測一次。
階段2:如果同步出現如下錯誤號碼(1158,1159,1008,1007,1062),則跳過錯誤。
階段3:請使用數組技術實現上述指令碼(擷取主從判斷及錯誤號碼部分)
15.
列印菜單(Bastion Host)
[[email protected]]# sh menu.sh
1.[install lamp]
2.[install lnmp]
3.[exit]
pls input the num you want:
要求:
1、當使用者輸入1時,輸出“startinstalling lamp.”然後執行/server/scripts/lamp.sh,指令碼內容輸出”lampis installed”後退出指令碼;
2、當使用者輸入2時,輸出“startinstalling lnmp.”然後執行/server/scripts/lnmp.sh輸出”lnmpis installed”後退出指令碼;
3、當輸入3時,退出當前菜單及指令碼;
4、當輸入任何其它字元,給出提示“Input error”後退出指令碼。
5、要對執行的指令碼進行相關條件判斷,例如:指令碼是否存在,是否可執行等。
16.批量檢查多個網站地址是否正常
17.已知下面的字串是通過RANDOM隨機數變數md5sum|cut-c 1-8截取後的結果,請破解這些字串對應的md5sum前的RANDOM對應數字?
18.根據web日誌或者或者網路連接數,監控當某個IP並發串連數或者短時內PV達到100即調用防火牆命令封掉對應的IP,監控頻率每隔3分鐘
防火牆命令為:iptables -A INPUT -s 10.0.1.10 -j DROP
19.檔案內容如下:
123abc456
456def123
567abc789
789def567
要求輸出:
456ABC123
123DEF456
789ABC567
567DEF789
20.有一列數字如下:
第1次:1
第2次:2
第3次:3
第4次:5
第5次:8
第6次:13
第7次:21
第8次:34
第9次:55
第10次:89
第11次:144
寫出100次的數是什麼。
21.傳入至少三個數字參數到指令碼file,並計算出最大,最小,平均值。需要判斷傳入的數字是否足夠,否則輸出警告資訊。平均值保留兩位小數。
如執行./file 3 4 6 5,輸出結果如下:
max number is:6
min number is:3
average is:4.50
22.編寫一個awk指令碼用來計算每個人的平均成績,每次測試的平均成績和每組隊的平均成績。如果某次成績為負數,則表示此人錯過了測試,那計算平均成績時排除此人再計算。輸出的結果如下表,在名字的列表中,名字是10個寬度且靠左對齊(提示printf中使用%-10s格式),而平均值是7個字元寬度,右邊兩個靠右對齊的小數。
23.分析網站日誌,找出在一分鐘內開啟網頁超過60次的ip(排除圖片,js和css等靜態元素),並用iptables禁止其訪問。加入crontab使指令碼每分鐘執行一次。
24.計算出1+2+3+..+100的結果。可以使用多種方法解答。
25.分析圖片服務日誌,把日誌(每個圖片訪問次數*圖片大小的總和)排行,也就是計算每個url的總訪問大小
說明:本題生產環境應用:這個功能可以用於IDC網站流量頻寬很高,然後通過分析伺服器日誌哪些元素佔用流量過大,
進而進行最佳化或裁剪該圖片,壓縮js等措施。
測試資料
59.33.26.105 – - [08/Dec/2010:15:43:56 +0800] “GET /static/images/photos/2.jpg HTTP/1.1″ 200 11299
26.列印1-100奇數?列印1-100偶數?列印1-100的和?列印1-100的奇數和?列印1-100的偶數和?列印1-100的質數?
27.編寫指令碼實現以下功能;
每天早上5點開始做備份
要備份的是/var/mylog裡所有檔案和目錄可以壓縮排行備份
備份可以儲存到別一台器上192、168、1、2 FTP帳號 aaa 密碼 bbb
要示每天的備份檔案要帶有當天的日期標記
28.建立一個函數,能接受兩個參數:
1)第一個參數為URL,即可下載的檔案;第二個參數為目錄,即下載後儲存的位置;
2)如果使用者給的目錄不存在,則提示使用者是否建立;如果建立就繼續執行,否則,函數返回一個51的錯誤值給呼叫指令碼;
3)如果給的目錄存在,則下載檔案;下載命令執行結束後測試檔案下載成功與否;如果成功,則返回0給呼叫指令碼,否則,返回52給呼叫指令碼;
29.寫一個指令碼,判斷一個指定的指令碼是否是語法錯誤;如果有錯誤,則提醒使用者鍵入Q或者q無視錯誤並退出其它任何鍵可以通過vim開啟這個指定的指令碼
30.已知下面的字串是通過RANDOM隨機數變數md5sum|cut-c 1-8截取後的結果,請破解這些字串對應的md5sum前的RANDOM對應數字?
31.批量檢查多個網站地址是否正常
32.【LVS備節點】類比keepalved vrrp
功能,監聽主
節點,如果主節點不可訪問則備節點啟動並配置LVS
實現接管主節點的資源提供服務(提醒:注意ARP
緩衝)
32.開發shell
指令碼分別實現以指令碼傳參以及read讀入的方式比較2
個整數大小。以螢幕輸出的方式提醒使用者比較結果。注意:一共是開發2
個指令碼。當用指令碼傳參以及read
讀入的方式需要對變數是否為數字
、並且傳參個數做判斷。
33.監控memcache
服務是否正常,類比使用者(web
用戶端)檢測。 使用nc
命令加上set/get
來類比檢測,以及監控回應時間及命中率。
34.監控web
網站目錄(/var/html/www
)下所有檔案是否被惡意篡改(檔案內容被改了),如果有就列印改動的檔案名稱(發郵件),定時任務每3分鐘執行一次(10
分鐘時間完成)。
35.寫網路服務獨立進程模式下rsync的系統啟動指令碼
36.學生實踐抓鬮題目:
好訊息,老男孩培訓學生外出企業專案實踐機會(第6次)來了(本月中旬),但是,名額有限,隊員限3人(班長帶隊)。
因此需要挑選學生,因此需要一個抓鬮的程式:
要求:
1、執行指令碼後,想去的同學輸入英文名字全拼,產生隨機數01-99之間的數字,數字越大就去參加項目實踐,前面已經抓到的數字,下次不能在出現相同數字。
2、第一個輸入名字後,螢幕輸出資訊,並將名字和數字記錄到檔案裡,程式不能退出繼續等待別的學生輸入。
37.手工開發ipvsadm
管理lvs
的指令碼ip_vs
38.類比keepalived健全狀態檢查功能管理LVS節點,
當節點掛掉(檢測2
次,間隔2
秒)從伺服器集區中剔除,好了(檢測2次,間隔2秒)加進來
提示:利用ipvsadm
命令實現添加和減少LVS
節點。
39.用shell處理以下內容
1、按單詞出現頻率降序排序!
2、按字母出現頻率降序排序!
the squid project provides a number of resources toassist users design,implement and support squid installations. Please browsethe documentation
and support sections for more infomation
40.類比keepalved vrrp
功能,監聽主
節點,如果主節點不可訪問則備節點啟動並配置LVS
實現接管主節點的資源提供服務(提醒:注意ARP
緩衝)
答案 下篇
shell編程企業實戰(試題)