2014-10-01 74 views
0

我試圖將多個命令的結果返回到單個輸出行。問題在於,只有當變量是命令時,才能將命令輸出到彼此之上。bash中多個shell命令輸出的回聲結果

實施例1:

Provider=$(adb shell getprop gsm.operator.alpha) 
Model=$(adb shell getprop ro.product.model) 
pM=$Provider $Model 
echo $pM + " is connected" 

輸出:被連接 預期:T-Mobile公司的Nexus 5連接

echo 
a='hello ' 
b='world' 
c=$a$b 
echo $c " its pretty outside." 

按預期方式工作,輸出:世界你好其漂亮外。

我很感激任何幫助!

回答

2

行由\r\n終止,所以必須除去\r。 有很多方法做到這一點,在這裏你是一個(和其他一些更正):

Provider=$(adb shell getprop gsm.operator.alpha | tr -d \\r) 
Model=$(adb shell getprop ro.product.model | tr -d \\r) 
pM="$Provider $Model" 
echo $pM " is connected" 
+0

啊,優秀。感謝您的幫助。 – 2014-10-01 13:06:50

2

變化的第三行,以adb shell命令的輸出

pM="$Provider $Model"