LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 929|回复: 5

awk的格式转换问题

[复制链接]
发表于 2006-1-23 22:10:01 | 显示全部楼层 |阅读模式
看到格式转换,有个问题不理解:
[PHP]awk 'BEGIN{abc="1";ABC="123abc"} {print ABC+abc}'
124[/PHP]
结果怎么不是1232?
发表于 2006-1-24 09:10:09 | 显示全部楼层
awk 'BEGIN{abc=1;ABC=123abc} END{print ABC+abc}'
这样就是
1232了
应该是引号的原因  但是我查了资料 也没有找到理论支持 还请高手指点
看来引号不能随便用 我以前不用引号 出了问题以后就都用引号
现在看来是要提高对 引号 的理解了
回复 支持 反对

使用道具 举报

发表于 2006-1-24 09:14:05 | 显示全部楼层
看了下《LINUX与UNIX SHELL编程指南》
awk的变量都没有用 引号  
只是把单纯意义的字符串用 引号 括了起来
我认为是 用引号以后 awk就不会管里面的内容 只是把他们认为只是
具有普通意义的字符(串)

在本书9.2.8 awk操作符
4.修改文本域 中
有 “记住字符串要使用双秒号(”“) ”  

呵呵 
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-24 14:32:35 | 显示全部楼层
明白 了,非常感谢;看来要多练习才行。
回复 支持 反对

使用道具 举报

发表于 2006-1-25 18:18:21 | 显示全部楼层
"上下文"!!!
回复 支持 反对

使用道具 举报

发表于 2006-2-6 09:50:20 | 显示全部楼层
# echo "" | awk 'BEGIN{integer="123"; string="abc"} {print integer+string}'
123
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表