測試環境為 Ubuntu 16.04 x64
$() , ${} , $(()) 這幾個的用法差別是??
$()
( ) 代表 子 shell 的起始與結束.
$ 表示變數字元.
$(指令) 代表運行命令並將其輸出 (process substitution) ,與 `指令` 是相同的用法.
直接執行指令
root@ubuntu:~# uname -r 4.4.0-75-generic
也可以透過 $(指令)
root@ubuntu:~# version=$(uname -r) root@ubuntu:~# echo $version 4.4.0-75-generic
也可以直接透過 echo 輸出.
root@ubuntu:~# echo $(uname -r) 4.4.0-75-generic
反單引號( ` ) 是一樣的效果.
root@ubuntu:~# version=`uname -r` root@ubuntu:~# echo $version 4.4.0-75-generic
${}
$ 同 ${ } 都是表示變數字元.
root@ubuntu:~# version="4.4.0-75-generic" root@ubuntu:~# echo $version 4.4.0-75-generic
root@ubuntu:~# echo ${version} 4.4.0-75-generic
一般常用 ${ } ,還可以幫 變數做 刪除/取代 字串 https://benjr.tw/96951 與 測試 , 替換 https://benjr.tw/96998 等功能.
$(())
$((計算式))) 主要是用於計算式的.
root@ubuntu:~# echo $((14*6)) 84
運算只限於整數,有小數點的不能用這個方式來運算.
root@ubuntu:~# echo $((14.3*6)) -su: 14.3*6: syntax error: invalid arithmetic operator (error token is ".3*6")
需要透過 bc (計算機) 來做.
root@ubuntu:~# echo {14.3*6} |bc 85.8 root@ubuntu:~# echo "14.3*6" |bc 85.8
沒有解決問題,試試搜尋本站其他內容