Linux shell 引數展開

2021-06-27 19:15:26 字數 1382 閱讀 7470

reminder="time to go to the dentist ! "   【將值儲存在reminder中】

sleep  120                              【等待兩分鐘】

echo  $reminder                   【顯示資訊】

替換運算子

運算子                                     替換

$                 如果varname存在且非null,返回其值;否則,返回word。 

用途:如果變數未定義,則返回預設值。

範例:如果count未定義,則$的值為0。

$                如果varname存在且不是null,則返回它的值;否則,設定它為word,並返回其值。

用途:如果變數未定義,則設定變數為預設值。

範例:如果count未被定義,則$設定count為。

$       如果varname存在且非null,則返回它的值;否則,顯示varname:message,並退出當前的命令或指令碼。

省略message會出現預設資訊parameter  null  or  not  set。注意,在互動式shell下不需要退出

(在不同的shell間會有不同的行為,使用者需自行注意)。

用途:為了捕捉由於變數未定義所導致的錯誤。

範例:$將顯示count:undefined!,且如果count未定義,則退出。

$               如果varname存在且非null,則返回word;否則,返回null。

用途:為測試變數的存在。

範例:如果count已定義,則$返回1(也就是"真")

模式匹配運算子

運算子                                           替換

$                如果模式匹配於變數值的開頭處,則刪除匹配的最短部分,並返回剩下的部分。

例:$                          結果:tolstoy/mem/long.file.name

例:$        如果模式匹配於變數值的開頭處,則刪除匹配的最長部分,並返回剩下的部分。

例:$                       結果:long.file.name

例:$           如果模式匹配於變數值的結尾處,則刪除匹配的最短部分,並返回剩下的部分。

例:$                         結果:/home/tolstoy/mem/long.file

例:$    如果模式匹配於變數值的結尾處,則刪除匹配的最長部分,並返回剩餘部分。

例:$                    結果:/home/tolstoy/mem/long

linux shell 引數傳遞

在shell程式設計時.可以使用引數。shell有位置引數和內部引數 1.位置引數 由系統提供的引數稱為位置引數。位置引數的值可以用 n得到,n是乙個數字,如果為1,即 1.類似c語言中的陣列,linux會把輸入的命令字串分段並給每段進行標號,標號從0開始。第0號為程式名字,從1開始就表示傳遞給程式...

linux shell 判斷引數

shell 程式設計中使用到得if語句內判斷引數 b 當file存在並且是塊檔案時返回真 c 當file存在並且是字元檔案時返回真 d 當pathname存在並且是乙個目錄時返回真 e 當pathname指定的檔案或目錄存在時返回真 f 當file存在並且是正規檔案時返回真 g 當由pathname...

Linux shell傳遞引數

在執行 shell 指令碼時,向指令碼傳遞引數,指令碼內獲取引數的格式為 n。n 代表乙個數字,1 為執行指令碼的第乙個引數,2 為執行指令碼的第二個引數,以此類推 例項以下例項我們向指令碼傳遞三個引數,並分別輸出,其中 0 為執行的檔名 bin bash echo shell 傳遞引數例項!ech...