输入:
number=5
if $number > 0; echo "Yes"; else echo "No";fi
我的输出是:
bash: 5: command not found...
No
我只想要Yes
或No
,那么语法有什么问题?
答案 0 :(得分:5)
if
需要命令(实际上是命令列表),而不是表达式。 test
命令就是你想要的。 (您也错过了then
关键字,它终止了条件。)
if test "$number" -gt 0; then
echo "Yes"
else
echo "No"
fi
答案 1 :(得分:4)
对于bash arithmetic,更喜欢现代风格:
if ((number > 0)); then
echo "Yes"
else
echo "No"
fi
或使用布尔逻辑:
((number > 0)) && echo "Yes" || echo "No"
答案 2 :(得分:2)
替代:
reinterpret_cast<B*>(pc)