我在StackOverflow上找到了很多关于此问题的答案,但我不能将它们应用到我的代码中。
我使用此命令获取当月的最后一天:
LASTDAY=`cal $(date +"%m %Y") | grep . | fmt -1 | tail -1`
然后我使用这段代码:
for i in {1..${LASTDAY}}
do
# code for processing here!
done
但总是得到这个警告: 第12行:[:{1..31}:预期的整数表达式
和我 {1..31} 但我预计 i 是范围内的数字[1,31]
我试过这个:
LASTDAY=$((LASTDAY+0))
LASTDAY=$( echo "$LASTDAY - 0" | bc )
LASTDAY=$(printf "%d" "$LASTDAY")
但它无法解决这个问题。我的代码有什么问题?以及如何解决它?
先谢谢。
答案 0 :(得分:8)
使用以下代替for i in {1..$Lastday}
for i in $(seq 1 ${LASTDAY}) ; do echo $i done
这样可行。