把awk中的数组赋值给shell中的数组
2017-05-17 16:06
405 查看
把awk中的数组赋值给shell中的数组
博客分类:linux/shell/sed/awkCC++C#JavaScriptBash
方法1,通过eval
Shell代码
#!/bin/bash
ipstr="192.168.1.152,192.168.1.153";
#declare -a arr;
eval $(echo $ipstr | awk '{split($0, filearray, ",");for(i in filearray)print "arr["i"]="filearray[i]}')
#eval 把print的内容,和javascript的eval一样的功能
#echo ${arr[1]}
for i in ${arr[*]}
do
#scp_c="scp $i:/opt/flow_video/2011-05-26.txt"
#echo $scp_c
scp $i:/opt/flow_video/2011-05-26.txt /opt/flow_video/2011-05-26_$i.txt
done
方法2 通过临时文件
Shell代码
#!/bin/sh
count=0
str="123#abc#@&?"
`awk 'BEGIN { split("'"$str"'",a,"#")}
END { for (i in a) {print a[i];$count++; }}' /dev/null > 2`
while read buf
do
tArray[$c]=$buf
c=$(expr $c + 1)
done < 2
echo "array len:" $c
for((i=0;i<$c;i++));
do
echo ${tArray[$i]}
done
执行输出
array len: 3
123
abc
@&?
相关文章推荐
- 通过临时文件的方法把awk中的数组赋值给shell中的数组
- shell数组赋值失败问题
- shell脚本从文件中按行读取数据,并且赋值到数组中的几种方法
- awk与shell变量互相赋值
- shell awk转成数组
- shell (awk)数组使用案例
- shell文本过滤编程(六):awk之循环判断及数组
- shell中数组的定义、初始化、引用、赋值
- shell 数组赋值
- 找了好久:awk 赋值给 shell 变量的方法
- Linux下将awk的变量赋值给shell变量
- awk存入shell数组
- shell中的数组、正则表达式、sed、awk的使用
- SHELL 数组:数组赋值中符号使用不正确(应该严格按"()"赋值),赋值后不能正确求出数组的长度。
- 传递shell脚本中的数组给awk
- 学了学shell,钻个牛角尖,根据接口文档生成配置数组...awk sed xargs
- awk之生成shell数组
- 注意区分shell与Makefile中变量赋值的区别
- Shell中的数组及其相关操作
- shell中用awk分割字符串