如何在mac下的perl中刷新文件?

时间:2011-05-06 10:24:31

标签: perl macos perl5.10

我在远程iMac中有perl, v5.10.0 built for darwin-thread-multi-2level。我想运行一些perl脚本,它会打印一些数据并在每行输出后刷新。

  1. $ file_handle->冲洗();
  2. autoflush $ file_handle;
  3. 我在文件顶部尝试了这两个版本use IO::Handle;,但我得到的结果是Can't locate object method "autoflush" via package "FileHandle"

3 个答案:

答案 0 :(得分:3)

你从哪里获得$file_handle?看起来它是FileHandle实例,而不是IO::Handle对象。

你可以尝试

use FileHandle;

位于脚本顶部,而不是IO::Handle。或者,更改代码,使$file_handle不再是FileHandle实例。

PS:你真的不应该运行5.10.0,它有很多错误。 5.10.1或更新的东西要好得多。

答案 1 :(得分:2)

你确定“使用IO :: Handle;”没有拼写错误?

我觉得模块没有加载。

答案 2 :(得分:2)

使用FileHandle;解决了我的问题。我遇到了Net :: SCP :: Expect的问题。这发生在CentOS 6.3下。

我得到的错误如下:
- 无法通过包文件句柄找到对象方法autoflush - 无法通过包文件句柄找到对象方法阻塞