Perl -s在分裂中的论点

时间:2016-06-08 08:43:09

标签: perl

我正在使用整数划分的代码:

$length = (-s $value1/$value2);

我收到的错误是-s是未初始化的值。那-s参数是什么意思?

2 个答案:

答案 0 :(得分:4)

请参阅-X

  

-s File具有非零大小(以字节为单位返回大小)。

在这种情况下似乎没有任何意义。除法返回一个被认为是文件名的数字,该数字可能不存在。

答案 1 :(得分:2)

-s运算符采用文件名并以字节为单位返回大小,如果发生错误则返回undef。当文件不存在或者权限不足时,最常见的一个错误。请参阅-X in perldoc

您的$value1/$value2将返回一个号码,-s将尝试在当前目录中查找该号码作为其名称的文件。这可能会失败,因此返回undef