shell程式設計100例(附PDF下載)

1、編寫hello world指令碼

2、透過位置變數建立 Linux 系統賬戶及密碼

3、備份日誌

4、一鍵部署 LNMP(RPM 包版本)

5、監控記憶體和磁碟容量,小於給定值時報警

6、猜數字遊戲

7、檢測本機當前使用者是否為超級管理員,如果是管理員,則使用 yum 安裝 vsftpd,如果不是,則提示您非管理員(使用字串對比版本)

8、檢測本機當前使用者是否為超級管理員,如果是管理員,則使用 yum 安裝 vsftpd,如果不是,則提示您非管理員(使用 UID 數字對比版本)

9、編寫指令碼:提示使用者輸入使用者名稱和密碼,指令碼自動建立相應的賬戶及配置密碼。如果使用者不輸入賬戶名,則提示必須輸入賬戶名並退出指令碼;如果使用者不輸入密碼,則統一使用預設的 123456 作為預設密碼。

10、輸入三個數並進行升序排序

11、石頭、剪刀、布遊戲

12、編寫指令碼測試 192。168。4。0/24 整個網段中哪些主機處於開機狀態,哪些主機處於關機狀態(for 版本)

13、編寫指令碼測試 192。168。4。0/24 整個網段中哪些主機處於開機狀態,哪些主機處於關機狀態(while 版本)

14、編寫指令碼測試 192。168。4。0/24 整個網段中哪些主機處於開機狀態,哪些主機處於關機狀態(多程序版)

15、編寫指令碼,顯示進度條

16、進度條,動態時針版本;定義一個顯示進度的函式,螢幕快速顯示| / ‐ \

17、9*9 乘法表

18、使用死迴圈實時顯示 eth0 網絡卡傳送的資料包流量

19、使用 user。txt 檔案中的人員名單,在計算機中自動建立對應的賬戶並配置初始密碼本指令碼執行,需要提前準備一個 user。txt 檔案,該檔案中包含有若干使用者名稱資訊

20、編寫批次修改副檔名指令碼

21、使用 expect 工具自動互動密碼遠端其他主機安裝 httpd 軟體

22、一鍵部署 LNMP(原始碼安裝版本)

23、編寫指令碼快速克隆 KVM 虛擬機器

24、點名器指令碼

25、檢視有多少遠端的 IP 在連線本機

26、對 100 以內的所有正整數相加求和(1+2+3+4。。。+100)

27、統計 13:30 到 14:30 所有訪問 apache 伺服器的請求有多少個

28、統計 13:30 到 14:30 所有訪問本機 Aapche 伺服器的遠端 IP 地址是什麼

29、列印國際象棋棋盤

30、統計每個遠端 IP 訪問了本機 apache 幾次?

31、統計當前 Linux 系統中可以登入計算機的賬戶有多少個

32、統計/var/log 有多少個檔案,並顯示這些檔名

33、自動為其他指令碼新增直譯器資訊

34、自動化部署 varnish 原始碼包軟體

35、編寫 nginx 啟動指令碼

36、自動對磁碟分割槽、格式化、掛載

37、自動最佳化 Linux 核心引數

38、切割 Nginx 日誌檔案(防止單個檔案過大,後期處理很困難)

39、檢測 MySQL 資料庫連線數量

40、根據 md5 校驗碼,檢測檔案是否被修改

41、檢測 MySQL 服務是否存活

42、備份 MySQL 的 shell 指令碼(mysqldump版本)

43、將檔案中所有的小寫字母轉換為大寫字母

44、非互動自動生成 SSH 金鑰檔案

45、檢查特定的軟體包是否已經安裝

46、監控 HTTP 伺服器的狀態(測試返回碼)

47、自動新增防火牆規則,開啟某些服務或埠(適用於 RHEL7)

48、使用指令碼自動建立邏輯卷

49、顯示 CPU 廠商資訊

50、刪除某個目錄下大小為 0 的檔案

51、查詢 Linux 系統中的殭屍程序

52、提示使用者輸入年份後判斷該年是否為閏年

53、生成隨機密碼(urandom 版本)

54、生成隨機密碼(字串擷取版本)

55、生成隨機密碼(UUID 版本,16 進位制密碼)

57、測試使用者名稱與密碼是否正確

58、迴圈測試使用者名稱與密碼是否正確

59、Shell 指令碼的 fork 炸彈

60、批次下載有序檔案(pdf、圖片、影片等等)

61、顯示當前計算機中所有賬戶的使用者名稱稱

62、制定目錄路徑,指令碼自動將該目錄使用 tar 命令打包備份到/data目錄

63、顯示進度條(迴旋鏢版)

64、安裝 LAMP 環境(yum 版本)

65、迴圈關閉區域網中所有主機

66、獲取本機 MAC 地址

67、自動配置 rsynd 伺服器的配置檔案 rsyncd。conf

68、修改 Linux 系統的最大開啟檔案數量

69、設定 Python 支援自動命令補齊功能

70、自動修改計劃任務配置檔案

71、使用指令碼迴圈建立三位數字的文字檔案(111-999 的檔案)

72、找出/etc/passwd 中能登入的使用者,並將對應在/etc/shadow 中第二列密碼提出處理

73、統計/etc/passwd 中 root 出現的次數

74、統計 Linux 程序相關數量資訊

75、從鍵盤讀取一個論壇積分,判斷論壇使用者等級

76、判斷使用者輸入的資料型別(字母、數字或其他)

77、顯示進度條(數字版)

78、列印斐波那契數列

79、判斷使用者輸入的是 Yes 或 NO

80、顯示本機 Linux 系統上所有開放的埠列表

81、將 Linux 系統中 UID 大於等於 1000 的普通使用者都刪除

82、使用指令碼開啟關閉虛擬機器

83、調整虛擬機器記憶體引數的 shell 指令碼

84、檢視 KVM 虛擬機器中的網絡卡資訊(不需要進入啟動或進入虛擬機器)

85、不登陸虛擬機器,修改虛擬機器網絡卡 IP 地址

86、破解虛擬機器密碼,無密碼登陸虛擬機器系統

87、Shell 指令碼對訊號的處理,執行指令碼後,按鍵盤 Ctrl+C 無法終止的指令碼

88、一鍵部署 memcached

89、一鍵配置 VNC 遠端桌面伺服器(無密碼版本)

90、關閉 SELinux

91、檢視所有虛擬機器磁碟使用量以及CPU使用量資訊

92、使用 shell 指令碼列印圖形

93、根據計算機當前時間,返回問候語,可以將該指令碼設定為開機啟動

94、讀取使用者輸入的賬戶名稱,將賬戶名寫入到陣列儲存

95、判斷檔案或目錄是否存在

96、列印各種格式的時間

97、使用 egrep 過濾 MAC 地址

98、統計雙色球各個數字的中獎機率

99、生成簽名私鑰和證書

100、使用awk編寫的wc程式

end

一口Linux

TAG: 指令碼虛擬機器密碼Linux版本