问题如下:
*** glibc detected *** awk: malloc(): memory corruption: 0x080c67f8 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7e35356]
/lib/tls/i686/cmov/libc.so.6[0xb7e3655a]
/lib/tls/i686/cmov/libc.so.6(realloc+0x10b)[0xb7e3875b]
awk[0x80569d5]
awk[0x805430a]
awk[0x805453c]
awk[0x805465e]
awk[0x8054a11]
awk[0x804dec1]
awk[0x804ce0d]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0)[0xb7ddf450]
awk[0x8048fa1]
======= Memory map: ========
08048000-0805e000 r-xp 00000000 08:02 7468 /usr/bin/mawk
0805e000-08060000 rw-p 00015000 08:02 7468 /usr/bin/mawk
08060000-080e6000 rw-p 08060000 00:00 0 [heap]
b7c00000-b7c21000 rw-p b7c00000 00:00 0
b7c21000-b7d00000 ---p b7c21000 00:00 0
b7dbc000-b7dc6000 r-xp 00000000 08:02 10377 /lib/libgcc_s.so.1
b7dc6000-b7dc7000 rw-p 0000a000 08:02 10377 /lib/libgcc_s.so.1
b7dc7000-b7dc9000 rw-p b7dc7000 00:00 0
b7dc9000-b7f12000 r-xp 00000000 08:02 2372 /lib/tls/i686/cmov/libc-2.7.so
b7f12000-b7f13000 r--p 00149000 08:02 2372 /lib/tls/i686/cmov/libc-2.7.so
b7f13000-b7f15000 rw-p 0014a000 08:02 2372 /lib/tls/i686/cmov/libc-2.7.so
b7f15000-b7f18000 rw-p b7f15000 00:00 0
b7f18000-b7f3b000 r-xp 00000000 08:02 6015 /lib/tls/i686/cmov/libm-2.7.so
b7f3b000-b7f3d000 rw-p 00023000 08:02 6015 /lib/tls/i686/cmov/libm-2.7.so
b7f52000-b7f54000 rw-p b7f52000 00:00 0
b7f54000-b7f55000 r-xp b7f54000 00:00 0 [vdso]
b7f55000-b7f6f000 r-xp 00000000 08:02 70920 /lib/ld-2.7.so
b7f6f000-b7f71000 rw-p 00019000 08:02 70920 /lib/ld-2.7.so
bfc1e000-bfc33000 rw-p bffeb000 00:00 0 [stack]
经过多次的调试,发现是由于访问array类型的数据时引起的问题。 array中可能存在元素没有值或者初始化,比如 array[100]没有赋值(或分配内存空间),如果程序访问array[100]时,就会导致内存溢出错误。
一般初始化array的值,就不会出现这类问题了。 不初始化会导致内存溢出out of bound,所以会memory corruption。因为awk中NUL和0是一样的,如果不初始化的话,整数类型的array中的空值为NUL,而不是0。 如果printf NUL,打印结果为0。
并且在awk中空值NUL或者空格,与0比较的话是小于0的。
BEGIN{
p =" "
}
END{
if(p < 0)
printf(" print: p%s p", p);
}
打印结果为: print: p p
分享到:
相关推荐
awk:AWK编程语言(AWK程序设计语言,awkbook)
Effective AWK Programming:Awk 编程的经典著作
awk 脚本指南通过两个简单的教程提高您的 awk 技能 文档Gawk:有效的 AWK 编程Gawkinet:与 Gawk 的 TCP/IP 互联手册页: mawk , gawk 图书有效的 awk 编程:通用文本处理和模式匹配sed 和 awk AWK 编程语言AWK ...
Vue-Tawk 塔克包装纸 这个Vue插件将tawk.io实例注入到您所有的vue实例中 安装 npm install vue-tawk --save or yarn add vue-tawk -D 用法 初始化 首先,您需要注册插件其次,您应该拥有一个的帐户 import Tawk ...
JSON.awk 用awk编写的实用JSON解析器。介绍JSON.awk是一个独立的单文件程序,没有任何外部依赖关系。 它类似于 ,这是用Bash编写的JSON解析器-于2013-03-13检索以构成JSON.awk的基础。 从那时起,这些项目便分开了...
awk_tawk 介绍AWK的出色表现,包括对AWK编程语言的回顾 还包括一个用AWK编写的演示工具。 吃自己的狗食或什么! SS=1 awk -f ./present.awk slides.txt ...其中SS可以选择提供起始幻灯片编号。 按下Enter键即可...
介绍Redis 客户端绑定, awk的 GNU 实现。 它的特点包括无全局变量污染具有可变长度参数列表的方便函数,尽管有限支持多个redis连接警告!!! 由于awk/gawk不是为处理二进制数据而设计的,因此在 Redis 服务器中...
一个真正的awk 这是Al Aho,Brian Kernighan和Peter Weinberger(Addison-Wesley,1988年,ISBN 0-201-07981-X)在AWK编程语言中描述的awk版本。版权版权所有(C)Lucent Technologies 1997 版权所有特此授予为免费...
智商[WiP] 缺少的IntelliJ IDEA语言支持插件动机目前没有IDEA的AWK插件,这很遗憾。 有兴趣提高我的Java技能并学习一些IDEA内部知识。目标v0.0.1 支持基本的AWK代码突出显示支持基本的AWK代码导航(转到声明,显示...
bib.awk 用awk编写的书目经理就像一样,但是更好。 最小(仅要求POSIX兼容的awk ) 在crossref和Google Scholar上搜索BibTeX 动态创建和修改Bib文件自动和手动重命名元数据并将其编码为pdf文件创建,查看和编辑子库...
基于 AWK 的 ASCIIMATION 星球大战这是 Simon Jansen 的 ASCIIMATION Star Wars 基于 AWK 的播放器用法简单地称这个坏男孩如下: $ ./asciimation.awk data/sw1.txt执照asciimation.awk 在 MIT 许可下发布sw1.txt 由...
ipawk #awk(gawk)的某些功能可与Shell / bash中的ip,net,子网一起使用 确保使用gawk | nawk(不是mawk)mawk ### awk -W版本 gawk | nawk ### awk -V 在代码中包含ipawk函数CUR_IP =“ 192.168.1.1/24” awk -...
AWK脚本大多数脚本从得到 , 和 。
awk 使用which命令检查是否已安装awk : $: which awk您应该会得到如下内容: /usr/bin/awk如果您没有安装awk ,可以获取。 volcano_observations.dat包含以下几行(请尝试使用cat volcano_observations.dat查看它)...
Fields.awk 允许用户在他们的家用计算机或带有 bash shell 终端模拟器的移动设备上创建和使用中小型数据库。 它可以在任何与 bash shell 兼容的操作系统上运行,包括 Linux、FreeBSD、MacOSX 和 Android。 某些可选...
GAWK: Effective AWK Programming;gAWK说明;GNU awk教程
awk学习awk学习awk学习awk学习awk学习awk学习awk学习
awk学习笔记
awk:超级强大的linux/unix下的文本处理语言,处于linux/unix工程师必知必会的东东。这版手册内容很全,比我手头的《UNIX和LINUX权威教程》上的awk部分还要全面。
awk介绍:This is a brief introduced awk document.