Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
perl';s int(-M$file)怎么办?_Perl_File - Fatal编程技术网

perl';s int(-M$file)怎么办?

perl';s int(-M$file)怎么办?,perl,file,Perl,File,我正在查看一些较旧的perl代码,我可以看到有人正在使用以下方法比较目录中各种文件的时间戳: int(-M $filename); 这到底是做什么的?我查看了文档中的int()条目,没有找到关于-M标志的任何信息。这是一个文件测试操作符 -X文件句柄 -X EXPR -X DIRHANDLE -X 文件测试,其中X是下面列出的字母之一。此一元运算符接受一个参数,即filename、filehandle或dirhandle,并测试关联的文件以查看其是否正确。如果省略了参数,则测试$\uuu,除

我正在查看一些较旧的perl代码,我可以看到有人正在使用以下方法比较目录中各种文件的时间戳:

int(-M $filename);

这到底是做什么的?我查看了文档中的
int()
条目,没有找到关于
-M
标志的任何信息。

这是一个文件测试操作符

  • -X文件句柄
  • -X EXPR
  • -X DIRHANDLE
  • -X

    文件测试,其中
    X
    是下面列出的字母之一。此一元运算符接受一个参数,即filename、filehandle或dirhandle,并测试关联的文件以查看其是否正确。如果省略了参数,则测试
    $\uuu
    ,除了测试
    -t
    ,后者测试
    STDIN
    。除非另有说明,否则它返回
    1
    表示真,返回
    '
    表示假。如果文件不存在或无法检查,它将返回
    unde
    并设置
    $(错误号)。尽管名称很有趣,但优先级与任何其他命名的一元运算符相同。操作员可以是以下任何人:

    ...
    31.  -M  Script start time minus file modification time, in days.
    

它是其中之一,int()只是将结果转换为整数。准确地说,它是
脚本开始时间减去文件修改时间,以天为单位
perldoc-f-M
(或参见)进一步澄清,
-M
不是
int()的“标志”。这就像
int(age\u of($bob))
可能会将bob的年龄四舍五入到最接近的整数
age\u of
不是
int()
的“标志”-相反,
age\u的输出成为
int()
的输入。