- 論壇徽章:
- 1
|
shell 十三問?
關(guān)于{}和()
1.{} 的用法
確認你有一個叫file和一個叫file1的變量。能夠使用以下的語句給它們賦值:
$ file=this
$ file1=that
$echo $fileand$file1 尋找變量fileand,file1
sh: fileand: parameter not set
$ echo ${file} and $file1 尋找變量file,file1
thisandthat
花括號被用來區(qū)分變量名和周圍的文本
2.()的用法
命令替代
語法:
$(command)
例子:
$pwd
/home/user2
$ curdir=$(pwd)
$ echo $curdir
/home/user2
$ cd /tmp
$ pwd
$ cd $curdir
$ pwd
/home/user2
命令替代用來替代一個命令和命令行輸出。命令替代的標準語法,也是POSIX鼓勵的一種語法是:$(command).
命令替代讓你捕獲一個命令的輸出,用它作為另一個命令的參數(shù),或是賦值給一個變量。象在變量替代中一樣,命令替代的執(zhí)行是在命令行開始之前完成的。當命令行輸出包含回車換行,它們會被空格代替。
同變量替代相似,命令替代使用一個美元符號之后的用括號包圍的一個命令。
所有有效的shell腳本都可以加入命令替代。Shell 掃描每行腳本,執(zhí)行它發(fā)現(xiàn)的開始于一個開括號,結(jié)束與于一個閉括號的命令。
命令替代的另外一種格式是用反引號來環(huán)繞一個命令象:
`command`
它和$(command) 是等價的,并且這是Bourne Shell認證的唯一的形式。`command`形式可以用在POSIX的腳本中和Bourne Shell的腳本中。
命令替代通常是在將一個命令的輸出賦給一個變量或以后的處理時使用。通常pwd命令將它的輸出送到你的屏幕。當你執(zhí)行以下的賦值語句:
$ curdir=$(pwd) 或 $ curdir=`pwd`
pwd 的輸出被賦給變量 curdir。 |
|