文章目錄
1. shell 與 bash的關係
(1)shell 是什麼
Shell 是用戶與Linux內核之間的接口。Shell 是一個命令解析器,用戶在命令提示符輸入的命令都由Shell 解釋然後傳給內核。
(2)shell 與 bash
bash(全稱 Bourne Again Shell) 可以理解爲 shell 的一個實例。Linux 的 Shell 種類衆多,常見的有:
- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- Shell for Root(/sbin/sh)
本文主要介紹的爲bash,由於其易用和免費,在日常工作中廣泛使用,也是大多數Linux默認的shell。
(3)腳本舉例
#!/bin/bash
#第一個shell小程序
echo hello world!
2. 如何執行shell腳本
(1)作爲可執行程序
chmod +x ./test.sh #使腳本具有執行權限
./test.sh #執行腳本
(2)作爲解釋器參數
/bin/sh test.sh
3. 編程需要注意的
這是我剛開始shell編程時感受到與其他編程較大的不同,因此在這裏特別指出,與大家分享,更多的參考資料見文章末尾鏈接,具體編程細節不在本文贅述,望見諒。
- 定義變量時,變量名和等號之間不能有空格;
- 使用一個定義過的變量,在變量名前面加美元符號即可;
- 註釋以“#”開頭,會被解釋器忽略;
- 在子任務後加&,可將任務設置爲後臺運行,使用wait等待所有子任務結束。
4. 參考資料整理
1. Shell教程–菜鳥教程
2. Advanced Bash-Scripting Guide
3. Unix Shell Programming
4. Linux Shell Scripting Tutorial - A Beginner’s handbook