Shell 編程跟 java、php 編程同樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執行的腳本解釋器就能夠了。php
Linux 的 Shell 種類衆多,常見的有:html
Bash,也就是 Bourne Again Shell,因爲易用和免費,Bash 在平常工做中被普遍使用。同時,Bash 也是大多數Linux 系統默認的 Shell。java
在通常狀況下,人們並不區分 Bourne Shell 和 Bourne Again Shell,因此,像 #!/bin/sh,它一樣也能夠改成 #!/bin/bash。linux
#! 告訴系統其後路徑所指定的程序便是解釋此腳本文件的 Shell 程序。shell
打開文本編輯器(可使用 vi/vim 命令來建立文件),新建一個文件 test.sh,擴展名爲 sh(sh表明shell),擴展名並不影響腳本執行,見名知意就好,若是你用 php 寫 shell 腳本,擴展名就用 php 好了。編程
輸入一些代碼,第一行通常是這樣:vim
#!/bin/bash echo "Hello World !"
#! 是一個約定的標記,它告訴系統這個腳本須要什麼解釋器來執行,即便用哪種 Shell。bash
echo 命令用於向窗口輸出文本。編輯器
一、做爲可執行程序spa
將上面的代碼保存爲 test.sh,並 cd 到相應目錄:
chmod +x ./test.sh #使腳本具備執行權限 ./test.sh #執行腳本
注意,必定要寫成 ./test.sh,而不是 test.sh,運行其它二進制的程序也同樣,直接寫 test.sh,linux 系統會去 PATH 裏尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 裏,你的當前目錄一般不在 PATH 裏,因此寫成 test.sh 是會找不到命令的,要用 ./test.sh 告訴系統說,就在當前目錄找。
二、做爲解釋器參數
這種運行方式是,直接運行解釋器,其參數就是 shell 腳本的文件名,如:
/bin/sh test.sh /bin/php test.php
這種方式運行的腳本,不須要在第一行指定解釋器信息,寫了也沒用。
來自:菜鳥教程