我想改动“Perl sunlink
,以检验我的代码删除正确的档案。 以为依据 这个问题及其答案和,我尝试:
use strict;
use warnings;
use subs unlink ;
sub mock_unlink {
use Data::Printer; p @_;
return;
}
BEGIN {
no warnings qw/redefine/;
*CORE::GLOBAL::unlink = mock_unlink;
# *unlink = mock_unlink;
use warnings;
}
unlink "some file";
但是,当我执政时,我的 mo忙职能确实被称作,但论点清单是空的。 我还收到警告说,<代码>unlink没有定义。
$ perl mcve.pl
[]
Undefined subroutine &main::unlink called at mcve.pl line 17.
我预计,它将印刷。
["some file"]
我先从以下线对评论进行了尝试:*unlink = mock_unlink;
,但那是没有变化的。
我如何需要修改<条码>unlink,以检查我的法典试图删除哪些档案?