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呢?