一、Shell中變量的聲明和引用
[root@ssspure ~]# var1=Hello [root@ssspure ~]# echo $var1 Hello [root@ssspure ~]# echo ${var1}World HelloWorld
在Shell中,變量的引用使用$。
上面的代碼中,$var1就是對變量var1的引用,輸出的結果是Hello。
如果想鏈接其他字符,將變量放到大括號{}裏面,然後在後面跟上其他內容。
例如上面的代碼中:${var1}World最後的結果就是HelloWorld
注意:Shell是一種弱類型的編程語言,並不是這個值用雙引號引用它就是字符串。單引號、雙引號和反引號的區別主要在於對變量和命令的解析上。
二、雙引號的使用
Shll中雙引號可以用來解析變量。
[root@ssspure ~]# var2="$var1" [root@ssspure ~]# echo $var2 Hello
如上圖代碼所示:將變量var1的引用放到雙引號裏面,然後賦給var2,var2的值就變成了var1的值。
由此可以看出,雙引號可以解析變量。
三、單引號
[root@ssspure ~]# var2='$var1' [root@ssspure ~]# echo $var2 $var1
從上面的代碼中可以看出,單引號和雙引號最大的區別就是單引號無法解析變量,賦給變量的是什麼就是什麼,並不會因爲是某個變量就將其解析出來。
四、反引號
反引號主要用來解析命令
[root@ssspure ~]# whoami root [root@ssspure ~]# var=`whoami` [root@ssspure ~]# echo $var root
在上面的代碼中,將whoami放到單引號中,並且賦值給變量var,那麼var的值就是命令whoami的值,也就是說反引號中的內容會當做命令來進行解析。
[root@ssspure ~]# var1="whoami" [root@ssspure ~]# echo $var1 whoami [root@ssspure ~]# var=`$var1` [root@ssspure ~]# echo $var root
從上面的代碼中可以看出,當反引號裏面有變量引用的時候,會先將變量解析出來,然後將變量解析出來的結果作爲命令來解析,最後賦值給變量var。
以上就是對Shell腳本中常用的三種引號的學習。