这是的输出ls -l
ls -l
total 53484
drwxr-xr-x 3 root root 4096 2011-02-10 05:59 ~
-rw-r--r-- 1 root root 54313810 2011-02-13 05:09 jobs.jar
-rw-r--r-- 1 root root 384035 2011-02-15 05:33 jobsLog.out
我不能这样做rm -rf ~
,因为那会删除我的主目录。
我应该怎么办?对我来说不是问题,只是眼睛疼。
rm -R ./~
这将使它
~
在当前文件夹中查找。我以前犯过一些愚蠢的错误,
rm
所以这里有一些我多年来学到的技巧,可以让你的数据免受事故的影响:使用像 Nautilus 这样的图形解决方案。将其软删除到垃圾箱。然后,当您知道您还没有将您
$HOME
的垃圾移入垃圾箱时(一切都会开始崩溃并且看起来很时髦),请清空您的垃圾箱。移动而不是删除。用 重命名目录
mv
,例如:然后删除它。
如果有疑问,请
-i
在处理潜在的 fubar 时使用该标志。它会提示您删除每个文件,并且应该让您很快知道是否会发生不好的事情。绝妙的问题:)
您可以通过转义波浪号来删除目录:
这适用于各种特殊字符。
您可以简单地将文件夹名称添加到撇号中:
另一种更复杂的方法是使用 inode 编号:
优点
-xdev
:不要在其他文件系统上下降目录),您可以先测试搜索,以防万一,删除-exec rm -rf {} \;
.缺点
find .
的目录中进行操作将花费大量时间和磁盘读取。