安全目录删除

cap*_*232 0 shell bash rm

我使用别名,rm以便rm -i当我输入错误时,file*file *意外删除我不打算删除的文件之前收到提示。目录是否有等效的习惯用法?

特别是,要删除目录及其内容,您必须rm -r. 使用时rm -ri会提示您输入其中的所有文件,而不仅仅是顶级目录。对于包含大量文件的目录来说,这并不方便。为了避免这种情况,我经常使用rm -rf,但这让我害怕。我只差一个错字就可以吹走很多重要的东西(例如,rm -rf ~ /foo而不是rm -rf ~/foo——哎呀!)。

人们可以编写一个稍微烦人的脚本来替换,例如,将 rmdir 替换为仅提示命令行上列出的内容的内容,但似乎这种问题应该已经存在解决方案。

cin*_*lli 5

rm -i会变得非常烦人,尤其是在递归删除时。

rm -I另一方面,似乎更容易忍受一点,它会删除三个以上文件之前递归删除时提示一次

它的侵入性要小得多,同时仍然可以防止大多数错误。

最好保护形式是在递归删除时进行双重/三次检查,或者更好的是,检查您删除的任何内容