1
任何人都可以解释为什么涉及复合运算符的下列bash代码的行为不如预期?基本上,没有进入if语句里面的for循环,但我通过它应该运行有返回正确的参数: ./my_bash_script 20100101 20120101bash中的化合物比较
dates.txt是自2000年以来
#!/bin/bash
old_IFS=$IFS
IFS=$'\n'
lines=($(cat dates.txt)) # array
IFS=$old_IFS
for ((i=1; i<${#lines[@]}; i++))
do
if [[ ${line[$i]} -ge $1 && ${line[$i]} -le $2 ]]; then
echo 0 > ${line[$i]} # redirect to file
echo ${line[$i]}
fi
done
的所有天列表
我固定线路的错误 - >线和现在的代码工作,结果是错字是问题,谢谢。 – user788171 2012-02-25 02:44:41
@ user788171:不客气!但我仍然认为你应该使用常规的for循环。 – ruakh 2012-02-25 02:49:16