在awk裏面打印單引號和雙引號多是awk初學者比較頭痛的意見事情,特別是單引號,其實仍是蠻簡單的。
雙引號:awk 'BEGIN{print "\""}'
這裏使用""是由於awk裏面打印常量都要用""括起來,\是轉義,省得前兩個雙引號配對,產生錯誤。
單 引號:awk 'BEGIN{print "'\''"}'
這裏其實能夠這樣理解awk 'BEGIN{print "' \' '"}'
注意配對方式,先打印BEGIN{print ",而後是\',而後是"},由於\'被bash解析成',因此awk獲得的是BEGIN{print "'"},爲何要用雙引號括起來,前面說過了。
如 果你使用文件(awk -f),那麼還會簡單一點:
14:38:18#www#test> cat a.awk
#!/usr/bin/awk -f
BEGIN{print "'"}
14:38:23#www#test> awk -f a.awk
'
14:38:26#www#test>
由於bash不會轉義文件裏面的東西,因此就不用\和裏面那層''了。html
該文章爲本人原創,首發LUPA開源社區 http://www.lupaworld.com/home/space-980-do-blog-id-147753.htmlbash