問題は数字の 08 と 09 にあります。これを Google で検索したところ、08 と 09 に問題がある理由がわかりましたが、解決策はありません。
これは、詳細に入ることなく私の問題を簡単に説明するために使用される無意味な例です。
cursorDay=2;
let cursorDay=$cursorDay+1;
case "$cursorDay" in
1) cursorDay=01;;
2) cursorDay=02;;
3) cursorDay=03;;
4) cursorDay=04;;
5) cursorDay=05;;
6) cursorDay=06;;
7) cursorDay=07;;
8) cursorDay=08;;
9) cursorDay=09;
esac
echo "$cursorDay";
私が期待する出力は「03」であり、実際にその出力が得られます。しかし、同じことをして 08 または 09 を取得しようとすると、次のエラーが表示されます。
line 100: let: cursorDay=08: value too great for base (error token is "08")
問題は、08 と 09 を単なる通常の数字として扱うように「強制」する方法があるかどうかです。ゼロを削除する方法を詳しく説明している投稿をいくつか見つけましたが、ゼロが必要です。