小编Irr*_*ant的帖子

如何阻止 Bash 解释八进制代码而不是整数?

我正在编写一个星座 RSS 脚本作为 Unix/Linux 项目的介绍,但遇到了一个问题,我的教授无法在我下课后留下来解决这个问题。由于我无法弄清楚如何使用实际日期作为要检查的内容,因此我想通过让用户输入为 MMDD 格式的标准数字来尝试基本算术。据他说,该脚本似乎将输入读取为八进制代码而不是整数。这是脚本的示例:

    elif [ "$olddate" -gt 1121 ] && [ "$olddate" -lt 1131 ] || [ "$olddate" -gt 1200 ] && [ "$olddate" -lt 1222 ]
then
echo "You are Sagittarius"
exit
elif [ "$olddate" -gt 1221 ] && [ "$olddate" -lt 1232 ] || [ "$olddate" -gt 0100 ] && [ "$olddate" -lt 0120 ]
then
echo "You are Capricorn"
exit
Run Code Online (Sandbox Code Playgroud)

这是最基本的,我拿出了RSS部分。“olddate”是我阅读提示中的预期输入。虽然 1121 到 1131、1200 到 1222 和 0100 到 0120 有效,但 1221 到 …

bash numeric-data printf

13
推荐指数
1
解决办法
4006
查看次数

标签 统计

bash ×1

numeric-data ×1

printf ×1