set 檢視系統變數
home:列印使用者家目錄。
shell:顯示當前shell型別。
user:列印當前使用者名稱。
id:列印當前使用者id資訊。
pwd:顯示當前所在路徑。
term:列印當前終端型別。
hostname:顯示當前主機名。
$home 列印使用者家目錄
a=10 定義乙個a值為10,10為字串型別
c=「hello word」 如果定義的變數中有空格加引號
普通變數可重新賦值
注意:變數名由字母,數字,下劃線組成,首位不能是數字。
變數名和等號之間不能有空格,變數值也是
echo $a 輸出a的值
readonly a=5
唯讀變數不能被重新賦值,不能被刪除
unset a(變數名)
export a 將a提公升到環境變數中
$0 顯示指令碼名稱
$1-$9 1-9的引數
$ 十以上引數的寫法
$# 顯示傳參個數
$* 顯示所有引數(把所有引數當成乙個整體)
$@ 顯示所有引數(把引數當成乙個個個體)
$? 返回最後一次執行操作的對錯如果對返回0如果錯返回非0
expr 3 + 2 計算3+2
expr `expr 3+2 *3 計算
缺點:太麻煩
a=$[(1+2)*4] 計算,並給a賦值
語法:[ 2 -lt 3 ] (中括號兩邊需要加空格)
用 $?判斷對錯對就是0,不對就是1
-lt 小於
-le 小於等於
-eq 等於
-gt 大於
-ge 大於等於
-ne 不等於
-r-w
-x[ -x batch.sh ] 判斷有無執行許可權
-f 是乙個常規檔案
-e 檔案存在
-d 是乙個目錄
[ -f batch.sh ] 判斷是不是乙個檔案
if[ 條件判斷式 ];then
程式fi
或if [ 條件判斷式 ]
then
程式elif [ 條件 判斷式 ]
then
程式fi
fi注意:
if後要有空格
格式:case $1(變數) in
「1」)
程式;;
「2」)
程式;;
*)esac
格式1:
for((a=1;a<10;a++))
do程式
done
格式2:
for $1(變數) in 取值列表
do程式
done
while [ $a -lt 10 (條件判斷語句)]
do程式
done
read -t 5 -p 「請輸入你的姓名」 a
格式:function(可省略)functionname()
functionname
必須在shell中呼叫函式
shell函式大全
二 函式傳參 三 函式變數的作用範圍 四 遞迴 五 建立庫 函式庫 將命令序列按格式寫在一起 可方便重複使用命令序列 1 function 函式名 2 函式名 return表示退出函式並返回乙個退出值,指令碼中可以用?變數 顯示該值 使用原則 1 函式一 結束就取 返回值,因為 變數顯示該值使用原則...
shell查詢命令大全
1.whereis 檔名 特點 快速,但是是模糊查詢,例如 找 whereis mysql 它會把mysql,mysql.ini,mysql.所在的目錄都找出來.一般的查詢都用這條命令.2.find name 檔名 特點 準確,但速度慢,消耗資源大,例如我想找到php.ini的準確位置,就需要用 f...
shell 指令碼語法大全
1 shell 指令碼第一行 後面的!來告訴shell用哪個shell來執行指令碼,可以使用base shell 2 環境變數 符號 3 使用者變數 區分大小寫 group mysql user mysql1 cat eof etc my.cnf eof 結束符可將指定內容輸入到指定的檔案中 cat...