linux常用特殊符号
在shell中常用的特殊符號羅列如下:
$ ${} $? $$ $*
$# $@ command{} [] [[]] () (())
-
; 分號 (Command separator)
在 shell 中,;主要用來在一行中運行一條或者多條指令。
-
;; 連續分號 (Terminator)
專用在 case 的選項,擔任 Terminator 的角色。
case “$fop” inhelp) echo “Usage: Command -help -version filename”;;version) echo “version 0.1” ;;esac -
‘string’ 單引號 (single quote) “string” 雙引號 (double quote)
被單引號用括住的內容,將被視為單一字串。在引號內的代表變數的$符號,沒有作用,也就是說,他被視為一般符號處理,防止任何變量替換。 被雙引號用括住的內容,將被視為單一字串。它防止通配符擴展,但允許變量擴展。這點與單引數的處理方式不同。
- command 倒引號 (backticks) 用倒單引號來執行指令。
- | 管道 (pipeline)
pipeline 是 UNIX 系統,基礎且重要的觀念。連結上個指令的標準輸出,做為下個指令的標準輸入。
[root@localhost ~]# who |wc -l 5- $相關指令
$ (dollar sign)
變量替換(Variable Substitution)的代表符號。
$*:引用script的執行引用變量,引用參數的算法與一般指令相同,指令本身為0,其后為1,然后依此類推。
$@ 與 $* 具有相同作用的符號,不過她們兩者有一個不同點。
符號 $* 將所有的引用變量視為一個整體。但符號 $@ 則仍舊保留每個引用變量的區段觀念。
$# :這也是與引用變量相關的符號,她的作用是告訴你,引用變量的總數量是多少。
$? :狀態值 (status variable)
一般來說,UNIX(linux) 系統的進程以執行系統調用exit()來結束的。這個回傳值就是status值。回傳給父進程,用來檢查子進程的執行狀態。 一般指令程序倘若執行成功,其回傳值為 0;失敗為 1。
- 小括號()
①命令組。括號中的命令新開一個子shell程序,括號中的變量為本地變量 ,不能夠在腳本其他部分使用。括號中多個命令之間用分號隔開。
②命令替換。命令替換$(cmd)等同于cmd(這不是單引號,`是ESC下面的那個鍵) ,shell執行過程中發現了$(cmd)結構,便將$(cmd)中的cmd執行一次,得到其輸出,再將此輸出放到原來命令。例如:
- { } 大括號 (Block of code)
①拓展。對大括號中的文件名做擴展。在大括號中,不允許有空白,除非這個空白被引用或轉義。拓展分為普通以逗號(,)進行拓展,如echo {a,b}.txt將間隔的各項內容均列出;已兩個點(…)進行拓展,如echo {1…5}.txt自動補全1到5中間內容。
[root@localhost ~]# echo {a,b}.txt a.txt b.txt [root@localhost ~]# echo {1..5}.txt 1.txt 2.txt 3.txt 4.txt 5.txt [root@localhost ~]#②內部組 。與小括號中的命令不同,大括號內的命令在當前shell運行,不會重新開子shell。括號內的命令間用分號隔開,最后一個命令后必須跟分號。{}的第一個命令和左括號之間必須要有一個空格。
- [ ] 中括號
常出現在流程控制中,扮演括住判斷式的作用。
[[ ]]
這組符號與先前的 [] 符號,基本上作用相同,但她允許在其中直接使用 || 與&& 邏輯等符號。
- & 后臺工作
單一個& 符號,且放在完整指令列的最后端,即表示將該指令列放入后臺中工作。
tar cvfz data.tar.gz data > /dev/null&
總結
以上是生活随笔為你收集整理的linux常用特殊符号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初探EntityFramework——空
- 下一篇: appsan可以扫描linux吗,[经验