+ -
当前位置:首页 → 问答吧 → perl输出到文件问题

perl输出到文件问题

时间:2011-10-15

来源:互联网

我perl脚本实现信息的重新编排输出。从a1文件拿信息一行,然后在后面加上若干个参数,最后输出到a2文件中。
但是奇怪的是有时候会有信息粘在一起的奇怪现象。
如:
从a1读到一行为(去掉换行符):$content="one;two;three;four";
然后自己加上内容,使之变为$content="one;two;three;four;five;six";
最后输出到a2中:
open(IN,">> a2");
print IN $content."\n";
经过多次操作,把a1的都搞完了,
然后查看a2,发现有些信息连在一起,而且连得很奇怪
如:
one;two;three;fodefg;hijkl;nmopq;
原本应该是两行信息,
one;two;three;four;five;six
abcdefg;hijkl;nmopq;
前一条信息后面部分没了,后一条前面部分没了,两者连在一起。。。。这是为什么呢?

作者: 年年年   发布时间: 2011-10-15

哈哈……没人回答。这种现象的确很诡异!但原因却很简单,是程序员的基础课。小弟没学好啊。特意在这里提醒:如果脚本中用了多进程运行的话,作用同一个文件会造成输入信息的紊乱现象。这时候应该改回单进程运行脚本(如果单进程就能满足的话),但非要用多进程的话就要加上文件锁了。哈~折腾了一天,领悟出这个基本的理论。特此分享下!

作者: 年年年   发布时间: 2011-10-19

赞。。

作者: cmzb   发布时间: 2011-10-31