Linux 下執行Shell 指令碼的方式

2022-05-25 01:27:10 字數 853 閱讀 4848

shell 指令碼的執行方式通常有如下三種:

(1)bash script-name 或者 sh script-name;(2)path/script-name或者./script-name;(3)sourcescript-name或者. script-name。下面,分別介紹下這三種方式的特點:

(1)bash script-name或者sh script-name

(2)path/script-name或者./script-name

指在當前路徑下執行指令碼(指令碼需要有執行許可權),需要將指令碼檔案的許可權改為可執行(即檔案許可權屬性為x位)。具體方法為:chmod a+x script-name。然後通過執行指令碼絕對路徑或者相對路徑就可以執行指令碼了。

注意:在生產環境中,運維人員由於忘記為該指令碼設定可執行許可權,然後直接使用,導致出錯。因此,推薦第一種 bashscript-name。

(3)source script-name或者. script-name

乙個規範的shell指令碼在第一行會指出由哪個程式(直譯器)來執行指令碼中的內容,不同的shell有不同的直譯器,例如c shell、tc shell等,這一行內容在linux bash的程式設計一般為:

#!/bin/bash

或#!/bin/sh

注意:(1)在shell中如果一行的第乙個字母是#,則是注釋,但是上面兩個是寫在第一行,所以不是指令碼注釋行,如果寫在某個命令之後,則變成注釋行。

(2)sh為bash的軟鏈結,大多數情況下,指令碼的開頭使用「#!/bin/bash」和「#!/bin/sh」是沒有區別的,但更規範的寫法是在指令碼的開頭使用「#!/bin/bash」。

Linux下執行Shell指令碼

linux下可以用兩種方式執行shell指令碼 1 用shell程式執行指令碼 根據你的shell指令碼的型別,選擇shell程式,常用的有sh,bash,tcsh等。一般來說,第一行 bin bash裡面指明了shell型別的,比如 bin bash指明是bash,bin sh則是sh 然後輸入命...

Ubuntu下執行Shell指令碼

將乙個指令碼儲存為帶有副檔名的檔案,如test.sh,在終端上輸入 chmod x test.sh 然後輸入 test.sh 終端顯示 test.sh 找不到命令 後來看了鳥個私房菜,發現這樣輸入,系統只會在 path上列出的路徑查詢,而不會查詢當前的目錄有沒有這樣的命名,以找到的第乙個為準 但是,...

Linux下Shell指令碼

shell 指令碼 shell script 是一種為 shell 編寫的指令碼程式。從業界所說的 shell 通常都是指 shell 指令碼,但讀者朋友要知道,shell 和 shell script 是兩個不同的概念。由於習慣的原因,簡潔起見,本文出現的 shell程式設計 都是指 shell ...