Linux文件系统中,对于一个死链接(dead symbol link)
file exists 返回 0file type 返回 "link"似乎删除这个死链接可以用如下命令
if { ![file exists $file] && [file type $file] eq "link" } {
file delete $file
}
#--OR--#
if { [file type $file] eq "link" && ![file exists $file] } {
file delete $file
}
但如果连这个symbol link文件也不存在的话,上面的代码都会导致file type错误。
经实验,其实只要这样做就可以了:
if { ![file exists $file] } {
file delete $file
}
利用的是file delete对不存在的文件也不会触发错误的特点。
TODO: 这算不算是一个bug呢?