如果结果是个位数,如何在shuf的输出中添加前导0



假设我运行以下命令:

shuf -i 0-12 -n 1

如果结果是0-9,我希望结果更改为00-09。

如果结果是10-12,则保持原样。

我该怎么做?

感谢

只需检查数字是否小于10,并相应地将其修改为字符串。如果shuf返回一个字符串&不是int,则可以检查字符串长度。我认为字符串长度是len=${num#},那么你应该检查len是否是-eq 1

num=$(shuf ...)
if [[ $shuf -lt 10 ]]; then
num="0${num}"
fi

最新更新