2016-09-22 145 views
0

如何將命令輸出分配給shell腳本變量。將命令輸出分配給shell腳本變量

echo ${b%?} | rev | cut -d'/' -f 1 | rev 

${b%?}給我一個path..for例如:/home/home1

上述命令給我和home1作爲輸出。我需要將此輸出分配給shell腳本變量。

我嘗試下面的代碼

c=${b%?} |rev | cut -d '/' -f 1 | rev 

echo $c 

但沒有奏效。

回答

1

要分配一些命令的輸出,你需要使用命令替換變量:

variable=$(command)

對於您的情況:

c=$(echo {b%?} |rev | cut -d '/' -f 1 | rev) 

只是想知道你爲什麼不嘗試

basename ${b} 

或者只是

echo ${b##*/} 
home1 

如果你想從您的路徑比去年修剪數:

b="/home/home1" 
echo $b 
/home/home1 
b=${b//[[:digit:]]/} 
c=$(echo ${b##*/}) 
echo ${c} 
home 
0

就像這樣:

variable=`command` 
+1

嵌套是使用難'一段單列 –

+0

應該有C無問題= \'$ {b%?} | rev | cut -d'/'-f 1 | rev \' –

+0

true ................ –

相關問題