把awk中的数组赋值给shell中的数组

转载 2017年05月17日 16:06:56
方法1,通过eval
Shell代码  收藏代码
  1. #!/bin/bash  
  2. ipstr="192.168.1.152,192.168.1.153";  
  3. #declare -a arr;  
  4. eval $(echo $ipstr | awk '{split($0, filearray, ",");for(i in filearray)print "arr["i"]="filearray[i]}')  
  5. #eval 把print的内容,和javascript的eval一样的功能  
  6. #echo ${arr[1]}  
  7. for i in ${arr[*]}  
  8. do  
  9. #scp_c="scp $i:/opt/flow_video/2011-05-26.txt"  
  10. #echo $scp_c  
  11. scp $i:/opt/flow_video/2011-05-26.txt /opt/flow_video/2011-05-26_$i.txt  
  12. done  


方法2 通过临时文件
Shell代码  收藏代码
  1. #!/bin/sh  
  2. count=0  
  3. str="123#abc#@&?"  
  4. `awk 'BEGIN { split("'"$str"'",a,"#")}  
  5.      END   { for (i in a) {print a[i];$count++; }}'  /dev/null > 2`  
  6.        
  7. while read buf  
  8. do  
  9.  tArray[$c]=$buf  
  10.  c=$(expr $c + 1)  
  11. done < 2  
  12. echo "array len:" $c  
  13. for((i=0;i<$c;i++));  
  14. do  
  15.   echo ${tArray[$i]}  
  16. done  

执行输出
array len: 3
123
abc
@&?

shell awk转成数组

在编写shell时,需要将awk转换成合适的数组类型: ( $(echo `cat $file | awk '{print $1}'`))...
  • qq_16097611
  • qq_16097611
  • 2016年07月04日 11:59
  • 977

shell编程:awk数组介绍——多文件处理

本文主要讲解使用awk操作多个文件时,如何建立映射关系。文章内容系本人原创,部分内容参考其他文章,欢迎转载。转载时请将二维码一起转载,谢谢。如果觉得本文不错,请帮忙扫描下列二维码,点击一下我的文章。...
  • AnLau
  • AnLau
  • 2016年12月02日 19:16
  • 312

linux shell数组赋值方法(常用)

Bash中,数组变量的赋值有两种方法:   (1) name = (value1 ... valuen) 此时下标从0开始   (2) name[index] = value   下...
  • nodeman
  • nodeman
  • 2015年09月11日 11:06
  • 2000

linux操作shell脚本定义数组赋值取值

Linux Shell在编程方面比Windows批处理强大很多,无论是在循环、运算。 bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获...
  • liqi_q
  • liqi_q
  • 2017年10月09日 16:59
  • 564

shell脚本从文件中按行读取数据,并且赋值到数组中的几种方法

从ip.txt里读取IP.然后把IP地址赋值到一个数组里. IP文件如下: Address:  220.181.26.163 Address:  220.181.26.174 Addr...
  • oLengYanKanFanHua
  • oLengYanKanFanHua
  • 2013年11月22日 12:50
  • 1948

awk的数组学习心得

http://bbs.chinaunix.net/thread-2312439-1-2.html   在文本处理的工作中,awk的数组是必不可少的工具,在这里,同样以总结经验和教训的方式和...
  • imxiangzi
  • imxiangzi
  • 2015年11月10日 16:41
  • 921

awk使用笔记:多维数组(带例子)

awk通过将下标整体看成一个字符串来支持多维数组。本文结合例子介绍awk多维数组的赋值及遍历。 文章目录 [隐藏] 1. 多维数组 2. 数组赋值 3. 遍历数组 ...
  • abcd1f2
  • abcd1f2
  • 2016年04月20日 11:24
  • 2132

awk 数组

awk 数组
  • shangboerds
  • shangboerds
  • 2015年10月27日 17:49
  • 980

linux awk 数组和循环

awk 作为强大的文本处理工具,少不了数组处理。awk 中数组叫做关联数组(associative arrays),下标可以是数字也可以是字符串。awk 中的数组不必提前声明,也不必声明大小,初始化数...
  • sunboy_2050
  • sunboy_2050
  • 2013年01月09日 00:00
  • 45418

AWK数组操作详细学习----关联数组

awk的数组跟其他程序设计语言的数组有所不同: 1、不需要正式定义,一个数组在使用时被定义; 2、数组元素的初始值为0或空字符串,除非他们被显示的指定初始化; 3、数组可以自动扩展; 4、下标...
  • imzoer
  • imzoer
  • 2013年03月28日 21:33
  • 8769
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:把awk中的数组赋值给shell中的数组
举报原因:
原因补充:

(最多只允许输入30个字)