- 何謂 Shell Script
- 文字介面下讓使用者與系統溝通的一個工具介面。
- 利用 shell 的功能所寫的一支『程式 (program)』。
- 將一些 shell 的語法與指令寫成純文字檔;
- 可搭配正規表示法、管線命令與資料流重導向等功能;
- shell script 更提供陣列、迴圈、條件與邏輯判斷等重要功能;
- 使用者也可以直接以 shell 來撰寫程式。
- Shell scripts 執行流程:
- 為什麼要學習 shell scripts?
- 自動化管理的重要依據:自動處理分析主機狀態,若有問題才通知。
- 追蹤與管理系統的重要工作:Linux 系統的服務( services )啟動的介面,在目錄 /etc/init.d/ 下,所有的檔案都是 scripts。
- 簡單入侵偵測功能:主動分析系統登錄檔。
- 連續指令單一化:彙整在 command line 下達的連續指令。例如: /etc/rc.d/rc.local 裡的資料。
- 簡易的資料處理:處理數據資料的比對,文字資料的處理等。
- 跨平台支援與學習歷程較短:幾乎所有的 Unix Like 上面都可以跑 shell script 。
- shell script 是一項很好的系統管理工具,但數值運算的速度較慢,且使用的 CPU 資源較多。
- Scripts 撰寫注意事項:
- 指令與參數間的多個空白會被忽略掉;
- 空白行及
[tab]
不會被理會;
- 讀到
[Enter]
符號,就開始執行該行命令;
- 一行的內容太多,可以使用
\[Enter]
來延伸至下一行;
- 加在
#
後面的字,全部被視為註解。
- 如何執行檔案 shell.sh ?
- 將 shell.sh 加上可讀與執行 (rx) 的權限,就能夠以 ./shell.sh 執行;
- 直接以 sh shell.sh 方式執行。