天天看點

第一個shell script的編寫和執行

一 概述

shell script其實是純文字檔案,我們可以編輯這個檔案,并利用這個檔案來幫助我們執行多個指令,或是利用一些運算與邏輯判斷來幫我們達成某些功能。

二 shell script腳本的注意事項

  • 指令的執行是從上而下,從左而右地分析與執行;
  • 指令的執行的過程中,指令,參數間的多個空白都會被忽略掉;
  • 空白行也将被忽略掉,并且[tab]鍵所得的空白同樣視為空格鍵;
  • 如果讀到一個Enter符号(CR),就嘗試開始執行指令;
  • 至于如果一行的内容太多,則可以使用“\[Enter]”來擴充至下一行;
  • “#”可以作為批注。任何加在#後面的資料将全部是為批注文字而被忽略。

三 一個簡單的shell script檔案及解析

#!/bin/bash
#Program:
#        This program shows "Hello World!" in your screen.
#History:
#2020/08/11 ZhouCheng First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
echo -e "Hello world! \a \n"
exit 0
           
#!/bin/bash 聲明檔案内的文法使用bash文法,當該程式被執行的時候,就會加載bash的相關環境配置檔案(一般來說就是non-login shell 的~/.bashrc),使得執行bash來使用我們後面的指令能夠執行。如果沒有配置該行代碼,則系統就無法判斷該程式使用什麼shell來執行代碼。

PATH=路徑1:路徑2:...:路徑n意思是可執行檔案的路徑包括從“路徑1”到“路徑n”的所有路徑。當使用者輸入一個一串字元并按回車後,shell會依次在這些路徑裡找對應的可執行檔案并交給系統核心執行。

export PATH 在 shell 中執行程式時,shell 會提供一組環境變量。export 可新增,修改或删除環境變量,供後續執行的程式使用。export 的效力僅限于該次登陸操作。

echo -e "Hello world! \a \n"表示在該程式輸出Hello world!

使用-e參數并使用sh shell.sh指令 或 利用chmod a+x shell.sh 和./shell.sh 指令執行腳本

第一個shell script的編寫和執行

exit指令是用來讓程式中斷,并傳回一個數值給系統。當使用exit 0的時候,代表離開script并回傳一個0給系統。

使用echo $?就可以得到0

第一個shell script的編寫和執行
其實我們可以利用exit進行自定義錯誤資訊顯示,使得腳本更加完善。

四 編寫shell script的良好習慣

  • 描述shell script的功能,版本資訊;
  • shell script的作者與聯系方式;
  • shell script的版權聲明方式;
  • shell script的曆史記錄;
  • shell script中涉及的特殊指令,使用“絕對路徑”的方式執行;
  • shell script執行時所需的環境變量預先聲明設定。