read_file'File :: Slurp' - sysopen:没有这样的文件或目录

时间:2012-08-25 14:11:20

标签: perl readfile fileslurp

这里可能有什么问题?

我正在尝试显示现有文件的内容:

perl -MFile::Slurp -e 'print File::Slurp->read_file("/tmp/001.jpg", { binmode => ":raw" } ) if -e "/tmp/001.jpg"; '

我收到错误:

read_file 'File::Slurp' - sysopen: No such file or directory

文件存在,print仅执行if -e "/tmp/001.jpg"

1 个答案:

答案 0 :(得分:8)

通过File::Slurp::read_file而不是File::Slurp->read_file来调用该功能。在后一种情况下,Perl的对象系统发挥作用,传递给read_file的第一个参数将是->之前的事物 - 意味着它的第一个参数将是字符串"File::Slurp"而不是你真正想要阅读的文件名。

这也是您在要创建新实例的软件包上调用new的原因。

相关问题