組成:literal + meta
就是一些字母單詞,組成命令的
特殊保留字元,對於shell有特殊意義重點
meta有分command meta和shell meta舉例
awk 1.txt 這裡{}會被解釋成shell meta。常見metaawk 『』 1.txt 中的{}被解釋成command meta
=: 設定變數。
$: 作變數或運算替換(請不要與 shell prompt 搞混了)。
>: 重導向 stdout。
<: 重導向 stdin。
|: 命令管線。
&: 重導向 file descriptor ,或將命令置於背境執行。
( ): 將其內的命令置於 nested subshell 執行,或用於運算或命令替換。
: 將其內的命令置於 non-named function 中執行,或用在變數替換的界定範圍。
; : 在前乙個命令結束時,而忽略其返回值,繼續執行下乙個命令。
&& : 在前乙個命令結束時,若返回值為 true,繼續執行下乙個命令。
|| : 在前乙個命令結束時,若返回值為 false,繼續執行下乙個命令。
!: 執行 history 列表中的命令
產生:空格鍵(space),**鍵(tab),回車鍵(enter)功能:拆解command line的每個單詞
產生:回車鍵(enter)功能:告訴shell可以執行命令列了
所有meta特殊字元會被關閉特性
大部分meta特殊字元會被關閉特性,但有些被保留,如$
只有緊接在反斜線\後的meta特性被關閉
shell通過ifs對命令列中的字串拆分執行ifs和cr都算是meta吧。。。。猜測
shell執行命令,通過ifs進行分割,是命令就執行
Shell 十三問 的學習記錄
在 bbs上看到了shell十三問的帖子,由於比較就遠了,怕以後再也找不到了,就把筆記貼過來了,shell 十三問 貼出我做的筆記 一 為何叫做shell 使用者通過shell 作業系統即核心kernel的外殼 與kernel溝通,這是shell與kernel的命名的關係。從技術角度講,shell的...
SHELL十三問之七 與 差在哪?
先說一下,為何要用 或 好了。qw8l8 m 1 許多時候,我們在 shell 操作上,需要在一定條件下一次執行多個命令,也就是說,要麼不執行,要麼就全執行,而不是每次依序的判斷是否要執行下乙個命令。或是,需要從一些命令執行優先次順中得到豁免,如算術的 2 3 4 那樣.這時候,我們就可引入 命令群...
SHELL十三問之十 與 差在哪?
在解答本章題目之前,先讓我們了解乙個概念 return value jdb id gy a我們在shell下跑的每乙個 command 或 function 在結束的時候都會傳回父程序乙個值,稱為 return value x9zjx x w9 q bsd愛好者樂園 ques9trm return ...