加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何检查和删除符号链接(如果存在),使用Perl?

发布时间:2020-12-15 21:42:04 所属栏目:大数据 来源:网络整理
导读:if (-e "$ENV{MYHOME}/link") { system("rm $ENV{MYHOME}/link");} 这是用于检查符号链接是否存在的代码,如果存在则将其删除. 我正在跟踪此代码无效的错误.到目前为止我还没弄清楚,但是发生的事情是这段代码无法删除符号链接,从而导致“文件存在”错误. 我想
if (-e "$ENV{MYHOME}/link") {
    system("rm $ENV{MYHOME}/link");
}

这是用于检查符号链接是否存在的代码,如果存在则将其删除.

我正在跟踪此代码无效的错误.到目前为止我还没弄清楚,但是发生的事情是这段代码无法删除符号链接,从而导致“文件存在”错误.

我想检查这种技术是否存在一些根本缺陷?我也读过http://perldoc.perl.org/functions/unlink.html,但是想知道是否由于某种原因不推荐目前的做法?

解决方法

只需使用:
if ( -l "$ENV{MYHOME}/link" ) {
    unlink "$ENV{MYHOME}/link"
        or die "Failed to remove file $ENV{MYHOME}/link: $!n";
}

如果取消链接失败,它会说明原因. -l询问目标是否是链接. -e询问文件是否存在.如果您的链接指向不存在的文件,则它将返回false,并且您的代码将无法删除该链接.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读