1基本語法
1.1 變量
- 環境變量:環境變量可以從子進程傳遞給父進程 一次shell進程的環境變量可以從當前shell進程傳遞給fork出來的子進程用printenv命令可- 以顯示當前shell進程的環境變量。
- 本地變量:只存在雨當前shell進程中。
注意:定義變量是等號兩邊不能加空格。
1. 2文件名代換
-
- 匹配0個或者多個任意描述符
- ?匹配一個任意字符
- [若干字符] 匹配方括號中任意一個字符的一次出現
1.3 命令代換符
1.4算術代換
$變量名 : 取變量的值
$(變量名): 取變量的值(安全)
$(()) :對變量執行算數運算
$(命令):取命令執行結果
$[]:對變量執行算數運算
1.5轉義字符 \ 和 –
1.6單引號雙引號
雙引號可以將字符串中的變量展開但單引號不可以
1.7數據類型
只有string類型
2shell腳本語法
2.1條件測試
命令test或 [ 可以測試一個條件是否成立 如果成立爲0 不成立爲1.
-
整數判別符: 只能用於比較整數中
- -eq :等於
- -gt :大於
- -lt: 小於
- -ge大於等於
- -le 小於等於
-
文件類型判別符:
-
字符串長度判別符
-
字符串比較判別符
-
邏輯或與
2.2分支語句
2.2.1if
#!/bin/bash
if [ -f smple.sh ]
then
echo "smaple是個文件"
elif [ -d smple.sh ]
then
echo "smaple,sh是個目錄"
else
echo “”
fi
2.2.2case
2.3循環
2.3.1for/do/done
2.3.2while/do/done
2.3.3break/continue
2.4位置參數 和特殊變量
2.5輸入輸出
2.6函數
2.7shell腳本調試方式
3正則表達式
3.1基本語法
3.1.1字符類
3.1.2數量限定符
3.1.3位置限定符
3.2grep命令
3.2.1作用
3.2.2格式及主要參數
3.2.3簡單實例
3.2.4複雜實例
3.3find
主要作用:搜索文件
- 主要 :find命令不能和管道命令結合使用 可以使用exec參數
- xargs參數 :默認不能處理有空格的文件名
4sed
4.1基礎
4.2選項含義
4.3常用sed命令
5awk命令