1. 程式人生 > >linux特殊符號說明及使用

linux特殊符號說明及使用

====================================================================================

(   ) 指令群組 (command group)
用括號將一串連續指令括起來,這種用法對 shell 來說,稱為指令群組。如下面的例子:(cd ~ ; vcgh=`pwd` ;echo $vcgh),指令群組有一個特性,shell會以產生subshell來執行這組指令。因此,在其中所定義的變數,僅作用於指令群組本身。我們來看個例子
# cat ftmp-01#!/bin/basha=fsh(a=incg ; echo -e "\n $a \n")echo $a#./ftmp-01incgfsh
除了上述的指令群組,括號也用在 array 變數的定義上;另外也應用在其他可能需要加上escape字元才能使用的場合,如運算式。


((  ))
這組符號的作用與 let 指令相似,用在算數運算上,是 bash 的內建功能。所以,在執行效率上會比使用 let指令要好許多。
#!/bin/bash(( a = 10 ))echo -e "inital value, a = $a\n"(( a++))echo "after a++, a = $a"

{  } 大括號 (Block of code)
有時候 script 當中會出現,大括號中會夾著一段或幾段以"分號"做結尾的指令或變數設定。
# cat ftmp-02#!/bin/basha=fsh{a=inbc ; echo -e "\n $a \n"}echo $a#./ftmp-02inbcinbc
這種用法與上面介紹的指令群組非常相似,但有個不同點,它在當前的 shell 執行,不會產生 subshell。
大括號也被運用在 "函式" 的功能上。廣義地說,單純只使用大括號時,作用就像是個沒有指定名稱的函式一般。因此,這樣寫 script也是相當好的一件事。尤其對輸出輸入的重導向上,這個做法可精簡 script 的複雜度。
此外,大括號還有另一種用法,如下
{xx,yy,zz,...}
這種大括號的組合,常用在字串的組合上,來看個例子
mkdir {userA,userB,userC}-{home,bin,data}
我們得到 userA-home, userA-bin, userA-data, userB-home, userB-bin,userB-data, userC-home, userC-bin,userC-data,這幾個目錄。這組符號在適用性上相當廣泛。能加以善用的話,回報是精簡與效率。像下面的例子
chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}
如果不是因為支援這種用法,我們得寫幾行重複幾次呀!

[   ] 中括號
常出現在流程控制中,扮演括住判斷式的作用。if [ "$?" != 0 ]thenecho "Executes error"exit1fi
這個符號在正則表示式中擔任類似 "範圍" 或 "集合" 的角色
rm -r 200[1234]
上例,代表刪除 2001, 2002, 2003, 2004 等目錄的意思。

[[     ]]
這組符號與先前的 [] 符號,基本上作用相同,但她允許在其中直接使用 || 與&& 邏輯等符號。
#!/bin/bashread akif [[ $ak > 5 || $ak< 9 ]]thenecho $akfi

相關推薦

linux特殊符號說明使用

==================================================================================== (   ) 指令群組 (command group) 用括號將一串連續指令括起來,這種用法對 shell 來說,稱為指令群組。如下面的例子:

Linux特殊許可權設定ACL許可權

SUID、SGID和sticky-bit 檔案特殊許可權 特殊許可權 說明 SUID 當一個設定了SUID的檔案被執行時,該檔案將以其所有者的身份執行,而不是執行者的許可權。

linux 特殊符號總結

1) >  1>  輸出重定向符號 重定向內容到檔案 清除已有的內容 然後加入到新內容 如果檔案不存在則建立 2) >> 1>> 追加輸出重定向符號  追加內容到檔案(中間無空格) 3) <  0<     輸入重定向   m

Scala學習之特殊符號函式

http://www.runoob.com/scala/scala-functions.html scala函式的定義,注意一些特殊函式的書寫 1. =>符號 var equalRight = (x:Int) => x + 1 //--equalRight

linux的cut、sort_wc_uniq、tee_tr_split命令一些特殊符號介紹

linux cut sort wc uniq tee shell特殊符號cut命令:1、* 任意個任意字符(這是一個通配符)2、? 任意一個字符3、 # 註釋字符4、 \ 脫義字符5、 | 管道符幾個和管道有關的命令:1、cut 分割,-d 分隔符 -f 指定段號 -c 指定第幾

Linux下Makefile的編寫四個特殊符號的意義@、[email protected]、$^、$

我們先看三段C++程式: 一、line1的原始碼 line1.h #ifndef _LINE_1_H #define _LINE_1_H void line1_print(const char *strMsg); #endif line1.cpp #includ

Day15 - linux特殊符號與正則表達式

find 括號 window type yellow 啟動 字符 clip 標準輸出 第1章 linux的特殊符號 1.1 通配符 * {} 1.1.1 含義 方便查找文件 通配符是用來找文件名字的。 1.1.2 * 通過find 命令找以 .sh 結尾的文件

Linux5.4 shell特殊符號管道相關命令

同時 去重 passwd bsp 註釋 shel 數字 重復 其中 特殊符合 1. * 任意個任意字符 2. ? 任意一個字符 3. # 註釋字符 4. \ 脫義字符 5. | 管道符 6. $ 變量前綴,正則表示行位 7.

【正則表達式】linux符號 正則表達式

lin int echo 字符 linux中 pri style pre 匹配 【符號】 # 換行 \n echo -e "yy\nwy" yy wy 【正則表達式】 cat test.txt yy1%yy2,yy3,yy4%yy5 # [,%

linux文件屬性、特殊符號、通配符、通配符與正則的區別

linux運維 正則 文件屬性 特殊符號 作者:Georgekai歸檔:學習筆記2017/12/25 本章正題:linux文件屬性、特殊符號、通配符、通配符與正則的區別1.1 軟鏈接與硬連接的區別1.1.1 1.創建軟連接(怎麽來的)cp -s 或 ln -s 意思一樣1.1.2 2.創建硬鏈接(怎麽來的)l

Linux學習筆記(二十五)shell特殊符號、 sort_wc_uniq、tee_tr_split

tee_tr_split命令一、特殊字符 1.‘* ‘任意個任意字符‘? ‘任意一個字符‘# ‘註釋字符‘ \ ‘脫義字符‘ | ‘管道符其中大部分之前都用過,對於脫義符‘\‘脫義符用法舉例如圖 2.幾個與管道有關的命令cut 分割,-d 分隔符 -f 指定段號 -c 指定第幾個字符 sort 排序,

Linux 通配符與特殊符號

Linux基礎 特殊符號 通配符 通配符與特殊符號 特殊符號: 引號系列: $() 和 ` ` 運行裏面的命令 ' ' 將裏面的命令原封不動的輸出 " " 將裏面的特殊符號解析運行 重定向系列 : > 標準輸出重定向 &g

Linux學習之三 特殊符號

linux tdi linux學習 文件 RR strong 數字 AR 正常 1,>或1> 輸出重定向:把前面輸出的東西輸入到後面的文件中,會清除原來的內容。 例如:echo “Im studying linux “>a.txt 2,>&

Linux centos7 shell特殊符號、cut命令、sort_wc_uniq命令、tee_tr_split命令、shell特殊符號

ear 兩個 XA style 統計字符 uniq login 出現 span 一、shell特殊符號、cut命令 *任意字符 [root@davery ~]# ls /tmp/*.txt/tmp/1.txt /tmp/2.txt /tmp/q.txt[root@d

第二十四課 shell的特殊符號cut_sort_wc_uniq_tee_tr_split 命令

20180424一、特殊符號 ‘*‘ 通配符,任意個任意字符‘?‘ 任意一個字符‘#‘ 註釋字符‘\‘ 脫義字符‘|‘ 管道‘$‘ 變量的前綴‘!$‘ 組合,正則裏面表示結尾‘;‘ 多條命令寫到一條,用分號分割 ‘?‘ 用戶的家目錄,後面正則表達式表示匹配符

Linux通配符與特殊符號知識大全匯總

特殊字符 通配符 老男孩教育 符號作用Linux通配符*匹配任意(0個或多個)字符或字符串,包括空字符串?匹配任意1個字符,有且只有一個字符[abcd]匹配abcd中任何一個字符,abcd也可是其他任意不連續字符[a-z]匹配中a到z之間的任意一個字符, a到z表示範圍,字符前後要連續,-表示範圍

linux基礎學習-10.1-特殊符號-分類講解

表示 GC tor cli com use 分割 命令執行 判斷 1、重定向符號 01、> 輸出重定向 先清空文件,追加 02、>> 追加輸出重定向 追加 03、< 輸入重定向 與 xargs tr 04、<< 追加輸入重定向 cat 向

常見Linux Shell中的特殊符號含義

運算 variable help erb null 作用 pip == 不可 在Shell的實際使用中,有編程經驗的很容易上手,但稍微有難度的是shell裏面的那些個符號,各種特殊的符號在我們編寫Shell腳本的時候如果能夠用的好,往往能給我們起到事半功倍的效果,下面就羅列

linux特殊符號用法詳解

引號 zabbix 目錄 sele cond 特殊符號 zab set speed 星號(*) 當用於shell變量時, [root@zabbix_nuc ~]# sql=‘select * from mysql.user‘ [root@zabbix_nuc ~]# ech

makefile中的特殊符號關鍵字

目標 需要 編寫 ats www. 如果 符號 placement ace 1.常見自動變量和含義 * :表示目標文件的名稱,不包含目標文件的擴展名。 + :表示所有的依賴文件,這些依賴文件之間以空格分開,按照出現的先後為順序,其中可能包含重復的依賴文件。 < :表