入門**
#! /bin/bash #選擇的直譯器
echo "hello world" #輸出
變數#! /bin/bash
i=0;
#錯誤寫法 i = 0; 不要加空格
echo$i;
#變數只有字串型別,引用需要加 '$'
##常用系統變數
#home
#pwd 當前目錄
#user 當前使用者
#shell 當前使用的直譯器
readonly i=5;
#唯讀變數
##特殊變數
$n#第幾個引數
#! /bin/bash
echo
$1$2
$3 執行:./my.sh 1 2 3
結果:1 2 3
$# #用於迴圈,總引數的個數
#! /bin/bash
echo
'$#'
=$#
執行:./my.sh 1 2 3 4
結果:$#=4
$*#所有引數作為整體
$@#所有引數分開來看
$?#上乙個指令碼的執行狀態 0執行完
運算子a=5
b=5echo $[
$a+$b
] 或者 echo
$(($a+$b))
或者 expr
$a + $b
條件判斷[ condition ]
#注意前後有空格
a=5b=5[$a
=$b]#注意空格
echo
$?結果: 0 正常
b=6echo
$?結果: 1 失敗
比較數值
-eq #等於
-lt-ne #不等於
-le-ge
-gt #大於
檢視許可權
[ -w a.sh ]
#檢視a是否有執行許可權
[ -f a.sh ]
#檢視檔案是否存在
[ -d a.sh ]
#檢視資料夾是否存在
[ -e a.sh]
#檢視是否存在
流程控制## 想要: 192.168.100.194
## 執行:
ifconfig
|grep bcast
## 結果:
inet 192.168.100.194 netmask 255.255.255.0 broadcast 192.168.100.255
ifconfig
|grep bcast |
cut -d : -f 2 |
cut -d " " -f 1
## 結果: 192.168.100.194 #注意最後切割" " 會分成三段,第二段啥也沒有
ifconfig
|grep bcast |
cut -d : -f 2 |
cut -c 2-8 ##取出第二個到第八個
sed
awk
sort
shell 學習筆記
shell 是解釋型語言 移植性強課對應不同的直譯器 bin sh f 變數開頭以乙個字母或者下劃線,後接任意長度的字母 數字或者下劃線。命令 commod op 引數 輸入 輸出 重定向管道 echo printf 大口如小口出。特殊檔案 dev null bit bucket 刪除所有輸入的資料...
shell學習筆記
shell指令碼在linux下開發經常需要用到,shell的指令碼可以幫助使用者自動化地和作業系統進行互動,起到了提高效率的作用。學習一門語言,通常需要實戰演練編碼除錯,shell該如何除錯呢?使用bash x命令即可。vi demo.sh敲入 bin bash echo 1 echo date y...
shell學習筆記
1 shell檔案的第一行都必須是 bin sh 也可以有其他路徑,這裡我們只以這個為例 2 定義變數 a value 中間不能有空格 呼叫方法 echo a 3 shell常用的條件測試 備註 方括號兩側必須要有空格,f lt等兩側也必須要有空格 a f file 判斷 file是否是乙個檔案 b...