免费注册 查看新帖 |

Chinaunix

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

[其他] 请问两阵列时如何合并呢 [复制链接]

论坛徽章:
0
发表于 2018-08-28 23:17 来自手机 |显示全部楼层
set a = ( a b c d e f )
set b = ( 1 2 3 4 5 6 )
请问可以使用一行就可以得到( a_1 b_2 c_3....)
两阵列合起来 而不使用回圈的方式
麻烦各位大大了 谢谢

论坛徽章:
4
15-16赛季CBA联赛之青岛
日期:2018-07-09 14:17:2815-16赛季CBA联赛之八一
日期:2018-08-06 15:30:0515-16赛季CBA联赛之广东
日期:2018-08-09 09:11:2115-16赛季CBA联赛之佛山
日期:2019-02-14 09:26:31
发表于 2018-08-29 10:15 |显示全部楼层
不要循环迭代,那就只能手写格式化输出吧,a[1],a[2],a[3] .. 想不出别的办法

论坛徽章:
0
发表于 2018-08-29 11:08 来自手机 |显示全部楼层
有可以用awk的可能性嗎   想請問awk大神看看  謝謝

论坛徽章:
0
发表于 2018-08-29 12:29 |显示全部楼层
本帖最后由 cd_chair 于 2018-08-29 12:37 编辑
  1. cat file
复制代码
set a = ( a b c d e f )
set b = ( 1 2 3 4 5 6 )
  1.   awk '{for(i=5;i<=NF-1;i++) {a[i]=NR==1?$i:a[i]"_"$i;b[i-4]=b[i-5]" "a[i]}}END{print "("b[NF-5]" )"}' file
复制代码

( a_1 b_2 c_3 d_4 e_5 f_6 )

论坛徽章:
0
发表于 2018-08-29 12:44 来自手机 |显示全部楼层
不好意思  如果陣列數量是未知的情況呢   我看awk中i-4 i-5是因為我例子有6的原因嗎  謝謝

论坛徽章:
0
发表于 2018-08-29 13:14 |显示全部楼层
回复 5# undeaduck
上下列数一致的情况是可以的
  1. $cat file3
  2. set a = ( a b c d e f g h i j )
  3. set b = ( 1 2 3 4 5 6 7 8 9 10 )
  4. $ awk '{for(i=5;i<=NF-1;i++) {a[i]=NR==1?$i:a[i]"_"$i;b[i-4]=b[i-5]" "a[i]}}END{print "("b[NF-5]" )"}' file3
  5. ( a_1 b_2 c_3 d_4 e_5 f_6 g_7 h_8 i_9 j_10 )
复制代码




论坛徽章:
4
15-16赛季CBA联赛之青岛
日期:2018-07-09 14:17:2815-16赛季CBA联赛之八一
日期:2018-08-06 15:30:0515-16赛季CBA联赛之广东
日期:2018-08-09 09:11:2115-16赛季CBA联赛之佛山
日期:2019-02-14 09:26:31
发表于 2018-08-29 14:48 |显示全部楼层
不是不能loop吗? 如果shell的 for 属于 loop ;难不成awk的 for 就不是loop了

论坛徽章:
4
15-16赛季CBA联赛之青岛
日期:2018-07-09 14:17:2815-16赛季CBA联赛之八一
日期:2018-08-06 15:30:0515-16赛季CBA联赛之广东
日期:2018-08-09 09:11:2115-16赛季CBA联赛之佛山
日期:2019-02-14 09:26:31
发表于 2018-08-29 15:35 |显示全部楼层
到底能不能loop?
  1. a=(a b c);b=(1 2 3)
  2. for((j=0;j<=${#a[@]}-1;j++)){ echo "${a[$j]}_${b[$j]}"; }
复制代码

这是shell

论坛徽章:
0
发表于 2018-08-30 12:17 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP