如何检查和删除符号链接(如果存在),使用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,并且您的代码将无法删除该链接. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |