shell在執(zhí)行命令時,會對命令后面接著的字符進行解析伪窖。
字符分割
單詞分割機制逸寓,字符之間的空格、制表符覆山、換行符竹伸,會被看做是單詞之間的界定符,它們是文本的一部分,只作為分隔符使用勋篓。分隔符將字符分割成為一個一個不同的參數(shù)吧享。例如:“echo hello world”其實是echo命令后有兩個參數(shù),命令分別對這兩個參數(shù)執(zhí)行譬嚣。
但將字符即文本放在雙引號中钢颂,shell中除了:“$”,“\”和“`”三個特殊字符之外拜银,文本中使用的特殊字符都講失去特殊含義殊鞭,即空格和換行符等都不被當成分隔符看待。即上文的“hello word”被當成一個參數(shù)(雖然這里輸出相同)
如果要禁止所有的字符展開尼桶,即禁止shell對輸入的字符進行任何解析操灿,需要使用單引號即可。下文會說到一些字符展開泵督。