免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2205 | 回复: 3

[文本处理] 请教各位大神一个问题 [复制链接]

论坛徽章:
0
发表于 2018-03-09 12:57 |显示全部楼层
  1. for n in $(ls *gz) ;do
  2.     node=$(echo $n |awk -F "-" '{print $2}')
  3.     body_size=$(zcat $n |awk '{a+=$6}END{print a}')

  4.     echo "${body[${node}]}"
  5.     [ "x${body[$node]}" = "x" ]  && body[$node]=$body_size  || body[$node]=$(( ${body[$node]} + $body_size ))

  6.     echo " $node  ---- ${body[$node]} "

  7.     echo ${body[$node]} >> /root/aaa/$node

  8. done
复制代码


  1. + body_size=6218102155
  2. + echo 367256023343
  3. 367256023343
  4. + '[' x367256023343 = x ']'
  5. + body[$node]=373474125498
复制代码



body[$node] 里面的$node 没变过来

论坛徽章:
24
申猴
日期:2014-10-10 15:56:39射手座
日期:2014-10-10 15:57:18黑曼巴
日期:2018-05-14 11:05:122016科比退役纪念章
日期:2018-05-14 11:05:0715-16赛季CBA联赛之北控
日期:2018-05-14 11:05:0015-16赛季CBA联赛之江苏
日期:2017-02-27 18:11:0715-16赛季CBA联赛之上海
日期:2018-08-15 09:48:5415-16赛季CBA联赛之佛山
日期:2018-07-20 17:14:2315-16赛季CBA联赛之佛山
日期:2019-09-10 18:08:4615-16赛季CBA联赛之山西
日期:2020-03-26 09:40:5115-16赛季CBA联赛之佛山
日期:2020-05-08 09:03:54
发表于 2018-03-09 14:05 |显示全部楼层
${body[${node}]}
这个是数组的表示方法,你没定义body数组

论坛徽章:
0
发表于 2018-03-09 14:29 |显示全部楼层
回复 2# chengchow

不是太明白
在for上面加了一句   declare -A body ,好像还不行,还请求指点下

论坛徽章:
24
申猴
日期:2014-10-10 15:56:39射手座
日期:2014-10-10 15:57:18黑曼巴
日期:2018-05-14 11:05:122016科比退役纪念章
日期:2018-05-14 11:05:0715-16赛季CBA联赛之北控
日期:2018-05-14 11:05:0015-16赛季CBA联赛之江苏
日期:2017-02-27 18:11:0715-16赛季CBA联赛之上海
日期:2018-08-15 09:48:5415-16赛季CBA联赛之佛山
日期:2018-07-20 17:14:2315-16赛季CBA联赛之佛山
日期:2019-09-10 18:08:4615-16赛季CBA联赛之山西
日期:2020-03-26 09:40:5115-16赛季CBA联赛之佛山
日期:2020-05-08 09:03:54
发表于 2018-03-09 18:30 |显示全部楼层
本帖最后由 chengchow 于 2018-03-09 18:33 编辑

看错了,左边是数组元素名称,这个不转换

只有在执行的时候才转换
你看到的是
body[$node]=$(( ${body[$node]} + $body_size ))
赋值后面的给body[$node]


[root@AnsibleTower_120 tmp]# sh aa.sh
1 c
2
[root@AnsibleTower_120 tmp]# cat aa.sh
#!/bin/bash


b=1
a[$b]=c
echo "1 "${a[$b]}


b=2
echo "2 "${a[$b]}


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP