shell指令碼從入門到複雜 其一 第乙個指令碼

2021-08-19 20:28:44 字數 622 閱讀 4586

第乙個shell指令碼

# vi test.sh

新增下面內容

#!/bin/bash

echo "hello world"

#! 是乙個約定的標記,告訴系統指令碼需要什麼直譯器來執行,就是使用哪一種 shell。

echo 命令用於向視窗輸出文字。

執行指令碼有兩種方式:

1):作為可執行指令碼

這種方式需要賦予指令碼可執行許可權

# 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 告訴系統說,就在當前目錄找。

2):作為直譯器引數

這種方式就是直接執行直譯器,然後加上指令碼名作為引數。

# /bin/bash test.sh

這種方式執行的指令碼,第一行的內容的去留其實就無關緊要了。

shell指令碼從入門到複雜 其四 陣列

陣列中可以存放多個值。bash shell 只支援一維陣列 不支援多維陣列 陣列元素的下標從0開始。shell 陣列用括號來表示,元素用 空格 符號分割開,語法格式如下 array name value1 valuen 讀取陣列 vi test.sh bin bash array1 a b c d ...

shell指令碼之從入門到放棄

批處理 預定義變數 用途 當前程序的程序號 pid 最後一次執行的命令的返回狀態。如果這個變數的值為 0,則證明上一條命令正確執行 如果這 個變數的值為非 0 具體是哪個數由命令自己來決定 則證明上一條命令執行錯誤 1後台執行的最後乙個程序的程序號 pid 備註 for,while,until三個大...

shell指令碼從入門到複雜 其五 基本運算子

shell支援多種運算子,包括 算數運算子 關係運算子 布林運算子 字串運算子 檔案測試運算子 原生bash不支援簡單的數 算,但是可以通過其他命令來實現,例如 awk 和 expr,expr 最常用。expr 是一款表示式計算工具,使用它能完成表示式的求值操作。例如,兩個數相加 注意使用的是反引號...