1. 程式人生 > >什麼是Linux的Shell指令碼和怎麼執行指令碼?

什麼是Linux的Shell指令碼和怎麼執行指令碼?

一、什麼是Shell?

        shell是外殼的意思,就是作業系統的外殼。我們可以通過shell命令來操作和控制作業系統,比如Linux中的Shell命令就包括ls、cd、pwd等等。總結來說,Shell是一個命令直譯器,它通過接受使用者輸入的Shell命令來啟動、暫停、停止程式的執行或對計算機進行控制。

二、什麼是指令碼?

       指令碼就是由Shell命令組成的檔案,這些命令都是可執行程式的名字,指令碼不用編譯即可執行。它通過直譯器解釋執行,所以速度相對來說比較慢。

三、Linux中有哪些指令碼直譯器?

       有dash和bash兩種,但dash沒有bash功能全面,所以通常使用bash。

       可以通過命令來檢視系統中的指令碼直譯器:  ls  -l  /bin/*sh

      

四、怎麼執行指令碼檔案?

       先建立一個指令碼檔案 script.sh  , 字尾名是 .sh

#!/bin/bash

echo "this is the first shell script"

注意:執行之前首先要為指令碼檔案新增可執行許可權,不然就得用root許可權才能執行!

新增可執行許可權: chmod  +x  script.sh   回車

      <1>第一種執行方式

            sh   script.sh    回車

      <2>第二種執行方式

            ./script.sh     回車

            這兩中執行方式有什麼區別呢?

            區別:第一種方式,使用/bin/sh所指向的shell直譯器來執行指令碼檔案

                       第二種方式,它預設使用/bin/sh所指向的shell直譯器來執行指令碼檔案,前提是指令碼檔案中未指定直譯器。但如果在指令碼檔案中指定了使用哪種指令碼直譯器,那麼它就不管/bin/sh指向哪個指令碼直譯器,而是使用指令碼檔案中所制定的那個指令碼直譯器。

            在指令碼檔案中指定指令碼直譯器: #!/bin/bash

       <3>第三種執行方式

           指定指令碼檔案的絕對路徑,即可執行

           舉例 /home/liutao/LinuxStudy/shellStudy/script.sh  回車

           這種執行方式選擇使用的指令碼直譯器和第二種相同。

執行指令碼檔案後輸出截圖: