我正在尝试一个示例程序,该程序可以计算命令行参数中给出的文件大小。当我将文件名存储在变量中时,它会正确给出大小,但从命令行参数获取文件名时不会输出结果。
#! /usr/bin/perl
use File::stat;
while(<>){
if(($_ cmp "\n") == 0){
exit 0;
}
else{
my $file_size = stat($_)->size; # $filesize = s $_;
print $file_size;
}
}
使用文件测试运算符时没有输出,-s
使用 stat 模块时出现错误:
Unsuccessful stat on filename containing newline at /usr/share/perl/5.10/File/stat.pm line 49, <> line 1.
Can't call method "size" on an undefined value at 2.pl line 17, <> line 1.
1.txt 是我作为输入提供的文件名。