使用反引号在 perl 脚本中获取核心文件
Posted
技术标签:
【中文标题】使用反引号在 perl 脚本中获取核心文件【英文标题】:get the core file in perl script with backtick 【发布时间】:2020-03-07 17:47:52 【问题描述】:在我的 ubuntu 14.04 (Linux 3.19.0 64bit) PC 上,我运行了一个 perl 程序,该程序在循环中包含以下内容
$params = setupParams();
$ret = `SOME_CMD $params`;
...
但由于某种原因,SOME_CMD 有时会偶尔给出Segmentation fault (core dumped)
。为了找出核心转储的原因,我需要获取核心文件。
不幸的是,我在运行 perl 脚本的终端上尝试了ulimit -S -c 0
,但它没有生成核心文件。
任何想法将不胜感激。
【问题讨论】:
不是core
文件转储到SOME_CMD
的“当前工作目录”吗?
unix.stackexchange.com 可能是这个问题的更好的地方,但弄清楚如何获取核心文件以调试程序也是与编程相关的,因此允许在此站点上。跨度>
【参考方案1】:
ulimit -c 0
阻止写入核心文件。你需要使用
ulimit -c unlimited
顺便说一句:您应该升级到维护的操作系统。
【讨论】:
以上是关于使用反引号在 perl 脚本中获取核心文件的主要内容,如果未能解决你的问题,请参考以下文章
Perl 的反引号/系统给出“tcsetattr:输入/输出错误”
在perl的反引号中使用chmod后导致权限的异步更改的原因