問題出在數字08和09.我用谷歌搜索了這個,發現08和09有問題的原因,但沒有解決方案。遞增一個數字並在Bash中添加一個前導零
這是一個無意義的例子,用於簡要描述我的問題而不涉及細節。
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的只是普通的數字?我發現幾個帖子詳細說明如何消除零,但我要爲零。
當你意識到你想_strings_「01」你可能會在你的問題更深入的瞭解。「09」,而不是_numbers_。 – Wrikken 2013-04-23 23:32:14