我需要读取/复制文件(test.pl)的内容,就像格式化和发送电子邮件一样。
我使用以下代码,但我无法打印任何内容。
即使文件存在于同一目录中,我也会收到此错误。
Failed: No such file or directory
代码:
#!/usr/bin/perl
use strict;
use warnings;
use DBI;
open my $fh, '<', 'test.pl '
or die "Failed: $!\n";
my $text = do {
local $/;
<$fh>
};
close $fh
or die "Failed again: $!\n";
print $text, "\n";
答案 0 :(得分:8)
您尝试打开的文件名中有一个额外的空格。在您的公开声明中,尝试将'test.pl '
更改为'test.pl'
。
答案 1 :(得分:0)
如果您要从STDIN(用户的输入)中读取文件名,您可能希望使用正则表达式(s / ^ \ s + // ....)或Text::Trim
以及其他验证来修剪它们