每天一個Linux命令之shell單引號和雙引號的經(jīng)典解釋
01 經(jīng)典解釋
單引號:所見即所得
雙引號:所見非所得,它會先把變量解析之后,再輸出
反引號(``) :命令替換,通常用于把命令輸出結(jié)果傳給入變量中
反斜杠( \ ) :轉(zhuǎn)義字符/逃脫字符,Linux如果echo要讓轉(zhuǎn)義字符發(fā)生作用,就要使用-e選項(xiàng),且轉(zhuǎn)義字符要使用雙引號
02 實(shí)例演示
請先看下面這個例子:
[root@dev2~] echo "$HOME" /root [root@dev2~] echo '$HOME' $HOME
從上面的例子就可以體現(xiàn)出單引號所見即所得,雙引號所見非所得的解釋,雙引號的時候,系統(tǒng)會先計(jì)算$HOME 的值,然后在echo出來,而單引號就是直接顯示單引號里的內(nèi)容了
my_name='wzx' str="Hello, I know your are \"$my_name\"! \n"
單引號字符串的限制:
單引號里的任何字符都會原樣輸出,單引號字符串中的變量是無效的;
單引號字串中不能出現(xiàn)單引號(對單引號使用轉(zhuǎn)義符后也不行)。
雙引號的優(yōu)點(diǎn):
雙引號里可以有變量
雙引號里可以出現(xiàn)轉(zhuǎn)義字符
接下來看看反引號的例子(``)
#!/bin/bash #演示``反引號功能 RESULT=`md5sum /home/wzx/Desktop.zip` #RESULT=$(md5sum /home/wzx/Desktop.zip) echo"Desktop.zip MD5值為:$RESULT"
再來看看反斜杠:一般用作轉(zhuǎn)義字符,或稱逃脫字符,Linux如果echo要讓轉(zhuǎn)義字符發(fā)生作用,就要使用-e選項(xiàng),且轉(zhuǎn)義字符要使用雙引號
echo-e "\n"
反斜杠的另一種作用,就是當(dāng)反斜杠用于一行的最后一個字符時,Shell把行尾的反斜杠作為續(xù)行,這種結(jié)構(gòu)在分幾行輸入長命令時經(jīng)常使用。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
Shell腳本從文件中逐行讀取內(nèi)容的幾種方法實(shí)例
今天小編就為大家分享一篇關(guān)于Shell腳本從文件中逐行讀取內(nèi)容的幾種方法實(shí)例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03Shell中的for和while循環(huán)詳細(xì)總結(jié)
這篇文章主要介紹了Shell中的for和while循環(huán)詳細(xì)總結(jié),本文講解了for循環(huán)的數(shù)字段形式、詳細(xì)列出、對文件進(jìn)行循環(huán),while循環(huán)的三種使用場合等內(nèi)容,需要的朋友可以參考下2015-05-05Shell腳本監(jiān)控服務(wù)器在線狀態(tài)和郵件報警的方法
這篇文章主要介紹了Shell腳本監(jiān)控服務(wù)器在線狀態(tài)和郵件報警的方法,使用的是ping命令來監(jiān)控,需要的朋友可以參考下2014-03-03