特殊字元
# 注釋
; 分隔
;; case條件的結束
. 命令相當於source命令
"" 部分引用 支援萬用字元擴充套件
' 『 全引用,不進行萬用字元擴充套件
\ 轉義
/ 目錄分隔符
, 多個命令都被執行,但返回最後乙個
` 後置引用
: 操作符
* 匹配0個或多個字元;數學乘法;**冪運算
? 匹配任意乙個字元;但在((a>b?a:b))表示c語言中的三目運算
$
( )
**塊,即乙個匿名函式,但其中定義的變數在後面依然可用
\; 用在find的-exec中 $find -name *.txt -exec cat {} \;
[ ]
< << > 重定向和程序替換 ls -al > a.txt
> < 還用在ascii比較 if [[ "$veg1" < "$veg2" ]]
\<,\>
正規表示式中的單詞邊界.如
:bash$grep '\' textfile
| 管道
>|
強制重定向
(即使設定了
noclobber
選項--
就是-c
選項).
這將強制的覆蓋乙個現存盤案.
|| 邏輯或操作 ;用在兩個命令之間的時候,表示在前乙個命令結束時,若返回值為 false,繼續執行下乙個命令
&& 邏輯與;用在兩個命令之間的時候,表示在前乙個命令結束時,若返回值為 true,繼續執行下乙個命令
& 後台執行 -
+乙個命令或者過濾器的選項標記.
~ home目錄
~+ 當前工作目錄
~- 先前工作目錄
^ 正規表示式中表示行首
$ifs 用來做一些輸入命令的分隔符, 預設情況下是空白.
控制字元
修改終端或文字顯示的行為. . 控制字元以control + key這種方式進行組合(同時按下). 控制字元也可以使用8進製或16進製表示法來進行表示, 但是前邊必須要加上轉義符.
控制字元在指令碼中不能正常使用.
ctl-b退格(非破壞性的), 就是退格但是不刪掉前面的字元.
ctl-c終結乙個前台作業.
ctl-d 從乙個shell中登出(與exit很相像).
"eof"(檔案結束). 這也能從stdin中終止輸入.
在console或者在xterm視窗中輸入的時候, ctl-d將刪除游標下字元. 當沒有字元時, ctl-d將退出當前會話, 在乙個xterm視窗中, 則會產生關閉此視窗的效果.
ctl-g "嗶" (beep). 在一些老式的打字機終端上, 它會響一下鈴.
ctl-h "退格"(破壞性的), 就是在退格之後, 還要刪掉前邊的字元.
ctl-i 水平製表符.
ctl-j 重起一行(換一行並到行首). 在指令碼中, 也可以使用8進製表示法 -- '\012' 或者16進製表示法 -- '\x0a' 來表示.
ctl-k垂直製表符.
ctl-l 清屏(清除終端的螢幕顯示). 在終端中, 與clear命令的效果相同. 當傳送到印表機上時, ctl-l會讓印表機將列印紙捲到最後.
ctl-m 回車.
ctl-q 恢復(xon).在乙個終端中恢復stdin.
ctl-s 掛起(xoff).
在乙個終端中凍結stdin. (使用ctl-q可以恢復輸入.)
ctl-u 刪除游標到行首的所有字元. 在某些設定下, 不管游標的所在位置ctl-u都將刪除整行輸入.
ctl-v當輸入字元時, ctl-v允許插入控制字元.
ctl-v主要用於文字編輯.
ctl-w
當在控制台或乙個xterm視窗敲入文字時, ctl-w將會刪除當前游標到左邊最近乙個空格間的全部字元. 在某些設定下, ctl-w將會刪除當前游標到左邊第乙個非字母或數字之間的全部字元.
ctl-z暫停前台作業.
參考:《高階bash指令碼程式設計指南》
Linux shell 特殊變數
posix內建的shell變數 變數 意義 目前程序的引數個數 傳遞給當前程序的命令列引數。置於雙引號內,會展開為個別的引數。當前程序的命令列引數。置於雙引號內,則展開為一單獨引數 連字型大小 在引用時給予shell的選項 前一命令的退出狀態。shell程序的程序編號 process id 0 零 ...
linux shell 特殊變數
0 shell本身的檔名 1 n 新增到shell的各引數值。1是第1引數 2是第2引數 所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。新增到shell的引數個數 shell本身的pid process...
Linux shell指令碼字元顯示特殊顏色效果
1 字元顏色顯示 bin bash 字元顏色顯示 e 允許echo使用轉義 033 開始位 033 0m 結束位 033等同於 e echo e 033 30m黑色字 033 0m echo e 033 31m紅色字 033 0m echo e 033 32m綠色字 033 0m echo e 03...