免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: jlu204
打印 上一主题 下一主题

求助。如何将文件中的每一行赋值到一个数组元素里? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2007-12-10 14:32 |只看该作者
原帖由 寂寞烈火 于 2007-12-7 23:23 发表
n=0;while read a b;do array[$n]=$b;((n++));done




嘿嘿,偶第一想法也是用read来实现,我是这么想的:


awk '{print $2}' ip.txt | read -a array

不过好像没有用。。。

论坛徽章:
0
12 [报告]
发表于 2007-12-11 15:43 |只看该作者
原帖由 springwind426 于 2007-12-10 08:59 发表


在bash中,要生成一个数组,用var=(a1 a2 a3...)

而var=$(命令)是表示将命令的标准输出中\n换成空格,然后形成一个字符串,并赋给变量var

因此,这是两个完全不同的概念,并不是差一个()的问题


应该不会“将命令的标准输出中\n换成空格”

~$ var=$(echo "1 2 3")
~$ echo "$var"
1 2 3

~$ var=$(echo -e "1\n2\n3")
~$ echo "$var"
1
2
3
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP