if (-e "$ENV{MYHOME}/link") {
system("rm $ENV{MYHOME}/link");
}
Run Code Online (Sandbox Code Playgroud)
这是用于检查符号链接是否存在的代码,如果存在则删除它.
我正在跟踪此代码无效的错误.到目前为止我还没弄清楚,但是发生的事情是这段代码无法删除符号链接,从而导致"文件存在"错误.
我想检查这种技术是否存在一些根本性缺陷?我还阅读了http://perldoc.perl.org/functions/unlink.html,但是想知道是否由于某种原因不建议使用当前的方法?
unp*_*nic 22
只需使用:
if ( -l "$ENV{MYHOME}/link" ) {
unlink "$ENV{MYHOME}/link"
or die "Failed to remove file $ENV{MYHOME}/link: $!\n";
}
Run Code Online (Sandbox Code Playgroud)
如果取消链接失败,它会说明原因.在-l
询问如果目标是一个链接.该-e
文件是否存在要求.如果您的链接指向不存在的文件,则它将返回false,并且您的代码将无法删除该链接.
归档时间: |
|
查看次数: |
15641 次 |
最近记录: |