常用的轉義字符
Shell解釋器為了能夠更好的理解您想表達的意思,還提供了特別豐富的轉義符號來幫助程序員處理輸入的特殊數據,常見的轉義字符包括有:反斜杠(\)的作用就是轉義後面的一個字符變為單純的字符串,單引號(‘‘)則是轉義其中所有的字符為單純的字符串,而雙引號("")是保留其中的變量屬性不轉義,反引號(``)則是把其中的命令執行後返回一個結果。
例如咱們先定義一個名稱為PRICE的變量並賦值為5,然後通過雙引號括起來輸出字符串與變量結合的結果:
[[email protected] ~]# PRICE=5 [[email protected] ~]# echo "Price is $PRICE" Price is 5 [[email protected]
原本剛剛是希望能夠進一步輸出“Price is $5”即價格是五美元的字符串信息,但碰巧美元符號與變量提取符號沖突了,因此輸出的並不是預想的信息。需要用轉義符把第一個$符號轉換成單純的字符串,再或者把整段都轉義成單純的字符串吧(當然這個只是讓您看下效果,並不符合實驗需要):
[[email protected] ~]# echo "Price is \$$PRICE" Price is $5 [[email protected] ~]# echo ‘Price is \$$PRICE‘ Price is \$$PRICE
好啦,咱們對轉義符學習的非常順利,但最後一個您可能看到結果時會覺得很無用,因此暫且先不用管具體的使用場景,就當作是提前為第4章的SHELL編程知識學習做一點小小的鋪墊吧。如果只需要某個命令的返回輸出值時,就可以用像`命令`這樣用反引號括起來的命令格式來達到效果,例如通過反引號與uname -a命令結合通過返回值來查看下本機版本和內核信息吧:
[[email protected] ~]# echo `uname -a` Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] ~]# echo "uname -a"
uname -a
常用的轉義字符