組合按鍵
組合按鍵 | 執行結果 |
---|
Ctrl + C | 終止目前的命令 |
Ctrl + D | 輸入結束 (EOF),例如郵件結束的時候; |
Ctrl + M | 就是 Enter 啦! |
Ctrl + S | 暫停螢幕的輸出 |
Ctrl + Q | 恢復螢幕的輸出 |
Ctrl + U | 在提示字元下,將整列命令刪除 |
Ctrl + Z | 『暫停』目前的命令 |
Shell脚本中$0、$?、$!、$$、$*、$#、$@
等的意义
符號 | 意義 |
---|
$$ | Shell本身的PID(ProcessID) |
$! | Shell最后运行的后台Process的PID |
$? | 最后运行的命令的结束代码(返回值) |
$- | 使用Set命令设定的Flag一览 |
$* | 所有参数列表。如"$*“用「”」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 |
$@ | 所有参数列表。如"$@“用「”」括起来的情况、以"$1" “
2
"
…
"
2" … "
2"…"n” 的形式输出所有参数。 |
$# | 添加到Shell的参数个数 |
$0 | Shell本身的文件名 |
$1~$n | 添加到Shell的各参数值。$1是第1参数、$2是第2参数…。 |
通配符
符號 | 意義 |
---|
* | 代表『 0 個到無窮多個』任意字元 |
? | 代表『一定有一個』任意字元 |
[ ] | 同樣代表『一定有一個在括號內』的字元(非任意字元)。例如 [abcd] 代表『一定有一個字元, 可能是 a, b, c, d 這四個任何一個』 |
[ - ] | 若有減號在中括號內時,代表『在編碼順序內的所有字元』。例如 [0-9] 代表 0 到 9 之間的所有數字,因為數字的語系編碼是連續的! |
[^ ] | 若中括號內的第一個字元為指數符號 (^) ,那表示『反向選擇』,例如 [^abc] 代表 一定有一個字元,只要是非 a, b, c 的其他字元就接受的意思。 |
變數內容的刪除與取代
變數設定方式 | 說明 |
---|
${變數#關鍵字} | 若變數內容從頭開始的資料符合『關鍵字』,則將符合的最短資料刪除 |
${變數##關鍵字} | 若變數內容從頭開始的資料符合『關鍵字』,則將符合的最長資料刪除 |
${變數%關鍵字} | 若變數內容從尾向前的資料符合『關鍵字』,則將符合的最短資料刪除 |
${變數%%關鍵字} | 若變數內容從尾向前的資料符合『關鍵字』,則將符合的最長資料刪除 |
${變數/舊字串/新字串} | 若變數內容符合『舊字串』則『第一個舊字串會被新字串取代』 |
${變數//舊字串/新字串} | 若變數內容符合『舊字串』則『全部的舊字串會被新字串取代』 |
| |
变量
${ncols:=72}
: checks if ncols is set and non-empty. If it is not, it assigns the value 72 to ncols
查看可用信号
kill -l