Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

お手軽に、計算をseqを使ったループで回そうとしたら「基底の値が大きすぎます (エラーのあるトークンは "008")」というエラー【シェルスクリプト】

エラーメッセージは

基底の値が大きすぎます (エラーのあるトークンは "008")

やってることは

for ii in `seq -w 1 164`
do
    t1=$(( t0 + ii * 86400 ))
    echo $t1
done

みたいな感じ
seqで引数iiを回して
それを$カッコの演算で加工して、何かに使う感じ

なんでエラーになるのかわからなかったが、調べてみてたら、すぐに解決できた

totech.hateblo.jp


どうやら、seq -w で0埋めしてるのが原因っぽい
$カッコの演算をするときに、0始まりの数字があるとそれは十進法じゃなくいとみなされるらしい
なので seq -w を seqに置き換えたら解決できた

ランキング参加中です

↓クリックしていただけると嬉しいです〜