這真的很奇怪... 我不能得到這個測試,導致在我的linux外殼真實,我無法圖爲什麼。linux外殼 - 無法比較字符串:adb外殼getprop ro.product.brand
#!/bin/bash
a=$(adb shell getprop ro.product.brand)
adb shell getprop ro.product.brand
if [ "$a" == "Huawei" ]; then
echo "Success"
else
echo "Failed"
fi
腳本只是輸出:
Huawei
Failed
鑑於此腳本:
b=$(whoami)
whoami
if [ "$b" == "amo" ]; then
echo "Success"
else
echo "Failed"
fi
...輸出:
amo
Success
誰能幫助我理解?
我已經嘗試過切掉空格或換行符在$一個由管道切割或sed的,但我得到了同樣的結果...
您確定該字符串不包含尾隨空格或換行符嗎?這似乎是在這種情況下可能出現的問題...... – Fred
我這麼認爲。看到下面的帖子。 –
試試這個:'echo「$ {#a}'這會打印出變量值中的字符數,所以你可以驗證沒有任何犯規行爲(比如一個不可打印的字符沒有顯示,但是在比較字符串時需要考慮) – Fred