相关疑难解决方法(0)

基数值太大(错误标记为"09")

运行我的bash脚本的这一部分时出现错误

脚本

value=0
for (( t=0; t <= 4; t++ ))
do
d1=${filedates[$t]}
d2=${filedates[$t+1]}
((diff_sec=d2-d1))
SEC=$diff_sec
compare=$((${SEC}/(60*60*24)))
value=$((value+compare))
done
Run Code Online (Sandbox Code Playgroud)

产量

jad.sh: line 28: ((: 10#2014-01-09: value too great for base (error token is "09")
jad.sh: line 30: /(60*60*24): syntax error: operand expected (error token is "/(60*60*24)")
Run Code Online (Sandbox Code Playgroud)

d1和d2是2014-01-09和2014-01-10中的日期

有解决方案吗?

bash

37
推荐指数
3
解决办法
2万
查看次数

在bash脚本中将字符串转换为整数

在一个文本文件test.txt中,我有下一个信息:

sl-gs5 desconnected Wed Oct 10 08:00:01 EDT 2012 1001
Run Code Online (Sandbox Code Playgroud)

我想通过下一个命令行提取事件的小时:

hour=$(grep -n sl-gs5 test.txt | tail -1 | cut -d' ' -f6 | awk -F ":" '{print $1}')
Run Code Online (Sandbox Code Playgroud)

我得到了"08".当我尝试添加1时,

 14 echo $((hour+1))
Run Code Online (Sandbox Code Playgroud)

我收到下一条错误消息:

./test2.sh: line 14: 08: value too great for base (error token is "08")
Run Code Online (Sandbox Code Playgroud)

如果Bash中的变量是无类型的,为什么?

bash

34
推荐指数
3
解决办法
11万
查看次数

对于日期字符串yyyymmdd,Bash -value对于base(错误标记为"09")来说太大了

我试图以yyyymmdd格式生成一个startDate,这个日期是上个月第三天的第一天.例如,当前月份是七月(07),所以我需要将我的开始日期作为四月(04) - 20150401的第一天.

为了在bash中实现这一点,我使用了以下命令:

StartDate=$(date -d "-3 month -$(($(date +%d)-1)) days" +"%Y%m%d")
Run Code Online (Sandbox Code Playgroud)

但是,这给了我以下错误:

line 93: 09: value too great for base (error token is "09")
Run Code Online (Sandbox Code Playgroud)

我不想更改StartDate变量的格式.对于单个数字月份(1-9),格式应该在yyyymmdd格式的月份数字前面有一个前导零.

有什么东西我错过了吗?

提前致谢!

bash shell date base

4
推荐指数
2
解决办法
4124
查看次数

对于 Base 来说价值太大(错误标记为“080”

我正在从文本文件中提取信息,特别是“FEW080”

但是,在运行我的脚本时,这是我收到的错误 Value Too Great for Base (错误标记为“080”,因为有一个前导零,我假设它将它视为八进制,但我想抑制任何前导零

fewClouds=$( egrep -o '\sFEW[0-9]{3}\s' metar.txt | cut -c5-7 ) 

if [ -n "$fewClouds" ]; then
fewClouds=$(($( egrep -o '\sFEW[0-9]{3}\s' metar.txt | cut -c5-7) *100))

printf "\nFew Clouds at %s feet" $fewClouds
fi
Run Code Online (Sandbox Code Playgroud)

linux bash ubuntu

-1
推荐指数
1
解决办法
105
查看次数

标签 统计

bash ×4

base ×1

date ×1

linux ×1

shell ×1

ubuntu ×1