相关疑难解决方法(0)

比较Bash中的数字

我开始学习为bash终端编写脚本,但我无法弄清楚如何让比较正常工作.我正在使用的脚本是:

echo "enter two numbers";
read a b;

echo "a=$a";
echo "b=$b";

if [ $a \> $b ];
then 
    echo "a is greater than b";
else
    echo "b is greater than a";
fi;
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是它比较了第一个数字的数字,即9大于10000,但1大于09

如何将数字转换为类型以进行真正的比较?

bash shell numeric

462
推荐指数
8
解决办法
79万
查看次数

Bash - 测试一个字符串是否比另一个字符串"更大" - 它是如何在内部工作的?

在Bash中,我可以编写以下测试

[[ "f" > "a" ]]
Run Code Online (Sandbox Code Playgroud)

这导致返回0,即为真.bash如何实际执行此字符串比较?从我的理解>做一个整数比较.它是否尝试比较操作数的ASCII值?

bash numeric-conversion

23
推荐指数
2
解决办法
3万
查看次数

在shell中比较变量和整数?

我有一个if语句我需要运行,只要我存储在我的$counter变量中的值大于5.

以下是我当前(无效)脚本的相应部分:

if $counter > 5
then
    echo "something"
fi
Run Code Online (Sandbox Code Playgroud)

我犯的错误可能非常明显,但由于某种原因我无法在线找到解决方案..谢谢!

bash shell

18
推荐指数
2
解决办法
6万
查看次数

标签 统计

bash ×3

shell ×2

numeric ×1

numeric-conversion ×1