Linux Shell中各種分號和括號的用法總結

2021-08-13 10:27:10 字數 1393 閱讀 4683

各種括號的用法總結如下

1.shell中變數的原形:$

大家常見的變數形式都是$var

2.命令替換$(cmd)

命令替換$(cmd)和符號`cmd`(注意這不是單引號,在美式鍵盤上,`是esc下面的那個鍵)有相同之處

3.一串的命令執行()和{}

()和{}都是對一串的命令進行執行,但有所區別:

a,()只是對一串命令重新開乙個子shell進行執行

b,{}對一串命令在當前shell執行

c,()和{}都是把一串的命令放在括號裡面,並且命令之間用;號隔開

d,()最後乙個命令可以不用分號

e,{}最後乙個命令要用分號

f,{}的第乙個命令和左括號之間必須要有乙個空格

g,()裡的各命令不必和括號有空格

h,()和{}中括號裡面的某個命令的重定向只影響該命令,但括號外的重定向則影響到括號裡的所有命令

4,幾種特殊的替換結構:$,$,$,$

5.posix標準的擴充套件計算:$((exp))

這種計算是符合c語言的運算子,也就是說只要符合c的運算子都可用在$((exp)),甚至是三目運算子和for語句。

注意:這種擴充套件計算是整數型的計算,不支援浮點型.若是邏輯判斷,表示式exp為真則為1,假則為0。

6.四種模式匹配替換結構:$,$,$,$

這四種結構的意義是:$和$表示從最右邊(即結尾)匹配的,$ 和$從最左邊(即開頭)匹配的。其中$和$是最短匹配,$和$是最長匹配。只有在pattern中使用了萬用字元才能有最長最短的匹配,否則沒有最長最短匹配之分。

7.[ 和 [[

$ type [ [[ test

[ is a shell builtin

[[ is a shell keyword

test is a shell builtin

各種引號的用法總結如下

1、 單引號 『

由單引號括起來的字元都作為普通字元出現。特殊字元用單引號括起來以後,也會失去原有意義,而只作為普通字元解釋。

2、 雙引號 「

由雙引號括起來的字元,除$、\、』、和」這幾個字元仍是特殊字元並保留其特殊功能外,其餘字元仍作為普通字元對待。對於$來說,就是用其後指定的變數的值來 代替這個變數和$;對於而言,是轉義字元,它告訴shell不要對其後面的那個字元進行特殊處理,只當作普通字元即可。可以想見,在雙引號中需要在前面加 上的只有四個字元$,,』和」本身。而對」號,若其前面沒有加,則shell會將它同前乙個」號匹配。

3、 反引號 `

反引號(`)這個字元所對應的鍵一般位於鍵盤的左上角,不要將其同單引號(』)混淆。反引號括起來的字串被shell解釋為命令列,在執行時,shell首先執行該命令列,並以它的標準輸出結果取代整個反引號(包括兩個反引號)部分。

linux shell中if的各種判斷

shell程式設計中使用到得if語句內判斷引數 b當file存在並且是塊檔案時返回真 c當file存在並且是字元檔案時返回真 d當pathname存在並且是乙個目錄時返回真 e當pathname指定的檔案或目錄存在時返回真 f當file存在並且是正規檔案時返回真 g當由pathname指定的檔案或目...

js replace 中文分號 JS中的分號!

首先,我們都知道,在js中有時候系統會自動的,預設我們加了分號,那麼自動插入分號的規則是什麼呢?2.程式從左到右解析,當納入下乙個 或者幾個 token時不能產生一條合法的語句的時候,會在這個地方插入乙個分號。3.程式從左到右解析,當納入的token能夠產生一條合法語句,但是這條語句是受限產生式時,...

linux中的分號

幾個符號的用法 順序地獨立執行各條命令,彼此之間不關心是否失敗,所有命令都會執行。順序執行各條命令,只有當前乙個執行成功時候,才執行後面的。放在啟動引數後面表示設定此程序為後台程序 順序執行各條命令,只有當前面乙個執行失敗的時候,才執行後面的。分號用法 用 號隔開每個命令,每個命令按照從左到右的順序...