請幫我找到問題if語句錯誤的bash
t1=$(sort -k 2,2 f.txt|head -1|cut -d" " -f3)
while read x
do
t2=$(echo $x|cut -d" " -f2)
if [ $t2 -ge $t1 ] ; then
p=$(echo $x|cut -d" " -f1)
echo -n $p " "
fi
done <f.txt
f.txt
F1 13
摹13
H 0
我geeting以下錯誤
-sbash: [: 13: unary operator expected
-sbash: [: 13: unary operator expected
沒有H 0行它正常工作
什麼?如果你已經在測試語句之前引用了變量,那麼不需要再次引用它,我甚至認爲這是不好的禮節。 – Anders 2010-01-21 00:42:36
@Anders:'v1 =「」; [「$ v1」=''] && echo「match」'vs v1 =「」; [$ v1 =''] && echo「由於錯誤而未打印」'vs'v1 =「」; [[$ v1 =='']] && echo「不需要引號」 – 2010-01-21 01:43:41