shell腳本中28個(gè)特殊字符的作用簡(jiǎn)明總結(jié)

1. #

注釋作用, #! 除外

此外, 在參數(shù)替換 echo ${PATH#*:} 這里不表示注釋, 數(shù)制轉(zhuǎn)換, 不表示注釋 echo $((2#101011))

2. ;

命令行分隔符, 可以在一行中寫多個(gè)命令. echo hello; echo there

3. ;;

終止 case 選項(xiàng)

復(fù)制代碼代碼如下:

case “$variable” in

abc) echo “\$variable = abc”;;

xyz) echo “\$variable = xyz”;;

esac

4. .

隱藏文件前綴

.命令等價(jià)于source

. 表示當(dāng)前目錄 .. 表示上一級(jí)目錄

正則表達(dá)式中作為單個(gè)字符匹配

5. “”, ‘'

雙引號(hào), 單引號(hào), 其中雙引號(hào)中可以引用變量, 而單引號(hào)中不行, 它們的作用是組織特殊字符

6. \

轉(zhuǎn)義字符

7. /

文件名分隔符, 除法操作

8. ` (Esc 下邊的按鈕)

后置引用, 命令替換

9. :

空命令, 等價(jià)于 “NOP”

也可被認(rèn)為是 shell 內(nèi)建命令 true 作用相同, 例如: 死循環(huán)

復(fù)制代碼代碼如下:

while :

do

echo ”1”

done

等價(jià)于:

復(fù)制代碼代碼如下:

while true

do

echo “1”

done

在 if/then 語句中做占位符:

復(fù)制代碼代碼如下:

if condition

then :? # 什么都不做, 引出分支

else

do other thing

fi

在一個(gè) 2 元命令中提供一個(gè)占位符.

在和 >(重定向操作符)一起使用時(shí), 清空文件, 并沒有修改文件的權(quán)限, 例如: (如果文件不存在, 將會(huì)創(chuàng)建文件)

: > data.log 等同于

cat /dev/null > data.log

10. !

取反操作符 != 不等于

11. *

萬能匹配符, 正則表達(dá)式中

數(shù)學(xué)乘法

** 冪運(yùn)算

12. ?

測(cè)試操作

正則表達(dá)式中, ? 匹配任意單個(gè)字符

13. $

變量符號(hào)

正則表達(dá)式中 行結(jié)束符

${} 參數(shù)替換

$*,$@ 位置參數(shù)

$? 退出狀態(tài)

$$ 進(jìn)程ID

14. ()

命令組, (a=hello; echo $a), 在 () 中的命令列表將作為一個(gè)子 shell 來運(yùn)行. 在() 中的變量, 由于在子shell中, 所以對(duì)于腳本剩下的部分是不可用的.

數(shù)組初始化: array=(element1, element2, element3)

15. {xxx,yyy,zzz}

大括號(hào)擴(kuò)展

cat {file1,file2,file3} > combined_file, 將file1,file2,file3合并在一起并重定向到commbined_file中. 大括號(hào)中不能有空格

16. {}

代碼塊. 事實(shí)上, 這個(gè)結(jié)構(gòu)創(chuàng)建了一個(gè)匿名的函數(shù). 但是與函數(shù)不同的是, 在其中聲明的變量, 對(duì)于腳本的其他部分的代碼來說還是可見的.

復(fù)制代碼代碼如下:

# 代碼塊中的內(nèi)容, 外部訪問, I/O重定向

1:? #!/bin/bash

2:

3:? File=/etc/fstab

4:

5:? # 在這個(gè)代碼塊中的變量, 外部也可以訪問

6:? {

7:? read line1

8:? read line2

9:? } < $File

10:

11:? echo "First line in $File is"

12:? echo "$line1"

13:? echo

14:? echo "Second line in $File is"

15:? echo "$line2"

16:

17:? exit 0

# 將一個(gè)代碼塊的結(jié)果保存到文件

17. {}\;

路徑名, 一般都是在 find 命令中使用, 注意; 用來結(jié)束find 命令序列的 –exec

18. []

test

數(shù)組元素, 例如 array[1]=abc

字符范圍, 在正則表達(dá)式中使用

19. [[]]

test 表達(dá)式本身放在[] 里

20. (())

數(shù)學(xué)計(jì)算擴(kuò)展

21. >& >>& >> <

重定向

scriptname > filename 重定向腳本的輸出到文件中, 覆蓋原有內(nèi)容

command &> filename 重定向 stdout 和 stderr 到文件中

command >&2 重定向 stdout 和 stderr

scriptname >> filename 重定向腳本輸出到文件中, 添加到文件尾端, 如果沒有文件, 則創(chuàng)建這個(gè)文件.

22. << <<<

重定向, << 用在“here document”, <<< 用在“here string”

23. \<, \>

正則表達(dá)式中的單詞邊界 grep ‘\' testfile

24. |

管道, 分析前邊命令的輸出, 并將輸出作為后邊命令的輸入

25. >|

強(qiáng)制重定向

26.? ||

邏輯或

27. &

后臺(tái)運(yùn)行命令, 一個(gè)命令后邊跟一個(gè)&, 將表示在后臺(tái)運(yùn)行

復(fù)制代碼代碼如下:

1:? #!/bin/bash

2:

3:? for i in 1 2 3 4 5 6 7 8 9 10

4:? do

5:????? echo -n "$i"

6:? done&

注意, for 循環(huán)的最后一個(gè) done&

28. &&

邏輯與

您可能感興趣的文章:

linux shell中的比較符號(hào)與特殊符號(hào)介紹

shell中冒號(hào)的特殊用法分享

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,182評(píng)論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,489評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,290評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,776評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,510評(píng)論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,866評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,860評(píng)論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,036評(píng)論 0 290
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,585評(píng)論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,331評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,536評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,058評(píng)論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,754評(píng)論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,154評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,469評(píng)論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,273評(píng)論 3 399
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,505評(píng)論 2 379

推薦閱讀更多精彩內(nèi)容