SHELL特殊字元

2021-10-04 01:19:05 字數 1534 閱讀 8093

字元含義#

1、通常用於注釋,通常 # 前後留乙個空格

2、某些模式匹配如sed,數值常量表示式(())及引數替換$中也使用

;命令分割符,允許單行寫多個的命令,例:echo var1;echo var2

;;case 的選項結尾符

.1、等同與source命令,載入指令碼檔案,可理解為python的import

2、正則中匹配單個字元

3、隱藏檔案的開頭

"雙引號引用字串,解析變數

』單引號引用字串,不解析變數

,(逗號)

1、多級算數運算,最後乙個被返回,例:let "t2 = ((a = 9, a / 3))"

2、連線字串,例:cp /etc/fstab;ls /etc/

3、引數替換,轉換變數為小寫,例:aa=aaa;echo $

:空命令,等同與true命令,while :; do echo 1; done

*1、萬用字元表示匹配任意檔名

2、正規表示式表示匹配0或多個字元

?1、萬用字元表示匹配檔名中單個字元

2、測試操作符,var1=100;(( var0 = var1<98?9:21 ))

$1、引用變數$var

2、正則中匹配行尾

()1、命令組,括號中命令會啟動乙個subshell執行,subshell變數不能傳出

2、定義陣列 list=(var0 var1 var2)

拓展表示式,用例:echo 「」

增強拓展表達,用例:base64_charset=( + / = )

{}1、**塊,也稱為內聯組,類似匿名函式,但**塊中變數對外部可見

2、文字展位符,xargs -i 預設指定

3、檔名稱 find中常用 {} \;

1、條件判斷同test命令,[ -z $var ]

2、陣列引用echo $

3、正則範圍匹配,grep [0-9] /etc/passwd

增強的條件判斷,比更靈活,是常用的條件判斷表達

(( ))

整數運算擴充套件,aa=$((a=100,a**2));echo $a $aa

> &> >& >> < <>

重定向符,<,>也有小於大於的表達

(command_list)>

<(command_list)

程序替換,以括號內多個命令的執行結果做為括號外命令的輸入,例:read -a list < <( od -ad -w24 -t u2 /dev/urandom )

<<

互動式的輸入重定向,例:cat >>file<<<<

可從變數獲取輸入,例pass=「123456」;passwd --stdin root <<< $pass

|管道符

||,&&

或,與–

表示後面跟的引數,例:rm – -filename

+ - * / %

加減乘除取餘

^1、正則表示行首,例:grep 『^root』 /etc/passwd

2、引數替換轉換大寫,例:var=aa;echo $

shell特殊字元

這篇博文記錄平時工作,shell中讓人犯迷糊的特殊字元。shell中特殊字元挺多,不適合花太多精力去蒐集 整理,我的想法是遇到了便總結下來,寫到這篇文件中,慢慢積累。百分號在計算公式裡可以取餘,這個就不說了。這裡記錄的是,可以按照模板對原字串進行擷取。舉例如下 root timmy scripts ...

Shell命令特殊字元

shell命令特殊字元 注釋 後台執行 把執行結果輸入到乙個指定的檔案中 把執行結果附加到乙個以存在的檔案後面 表示當前目錄 表示上一級目錄 最後一次執行的命令的返回碼 shell程序自己的pid shell程序最近啟動的後台程序的pid 命令列引數的個數 0 指令碼檔案本身的名字 1 2 第乙個,...

Shell命令特殊字元

shell命令特殊字元 注釋,以後臺方式執行。如 find name linux 取代命令字元。可用它將多個命令分隔開來,讓命令依次執行。重定向,把執行結果輸入到乙個檔案中。若該檔案已經存在,則原有內容會被充掉。如ls l aa.txt 把招待結果附加到乙個已存在的檔案後面。建立管線,將乙個命令的執...