【技巧】linux shell中單引號/雙引號/反引號的區別
教育
05-28
單引號"" 雙引號"" 和 反引號``的區別
1:單引號"" 雙引號""兩者都是解決變數中間有空格的問題。
在bash中「空格」是一種很特殊的字元。
比如在bash中這樣定義str=this is a String,這樣就會報錯,為了避免出錯就得使用單引號""或雙引號""。兩者的區別在於:
單引號""剝奪了所有字元的特殊含義,單引號""內就變成了單純的字元。
雙引號""則對於雙引號""內的參數替換($)和命令替換(``)是個例外。
例:
tilaile$ n=3
tilaile$ echo "$n"
$n
tilaile$ echo "$n"
3
2:反引號``是命令替換,命令替換是指Shell可以先執行``中的命令,將輸出結果暫時保存,在適當的地方輸出。語法:`command`
tilaile$ DATE=`date`
tilaile$ echo "DATE is $DATE"
DATE is 2017年12月30日 星期六 01時48分59秒