慕容3067478
2019-05-29 11:07:43
linux的shell編程中如何將一段命令的結(jié)果封裝成一個(gè)變量?
4 回答

小唯快跑啊
TA貢獻(xiàn)1863條經(jīng)驗(yàn) 獲得超2個(gè)贊
直接賦值給變量就可以了啊,變量可以保存多行字符串內(nèi)容的。使用變量的時(shí)候記得將其放在雙引號里就行了。
12 | var=`dmesg | grep eth` echo "$var" |
一對反引號(ESC下面的鍵),表示優(yōu)先執(zhí)行其中的命令,執(zhí)行完成后將結(jié)果賦值給var變量。
字符串變量使用的時(shí)候加雙引號,作為一個(gè)整體看待。

至尊寶的傳說
TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊
至少有兩種方式:
命令放在``中 (一般鍵盤1左邊那個(gè)鍵),如
echo `dmesg | grep eth`
命令放在$()中,如
echo $(dmesg | grep eth)

搖曳的薔薇
TA貢獻(xiàn)1793條經(jīng)驗(yàn) 獲得超6個(gè)贊
可以如下保存到變量varname中
varname=`dmesg | grep eth`
如果返回的是多行,可以保存到數(shù)組中
array=($(dmesg | grep eth))
然后用for循環(huán)獲取數(shù)組中各個(gè)值
len=${#array[@]}
for((i=0; i<$len; i++))
do
oneline=${array[$i]}
done
添加回答
舉報(bào)
0/150
提交
取消