我有rm -rf *每次进入某种睡眠模式时打字的习惯。似乎我的潜意识希望我在一天结束时删除我编写的所有内容。
有没有办法rm -rf *在 Linux 中的 C-shell 或 bash-shell 中阻止此特定命令 ( )?
或者,有没有办法在我的 shell 输入进入 shell 进行进一步处理之前为我的 shell 输入设置命令过滤器?
查看safe-rm,它是一个包装器,rm它允许您设置一个不会被意外删除的重要目录列表。
这不会阻止您意外删除所列目录之外的文件,但是当您的潜意识决定加大赌注并执行rm -rf /.
除此之外,防止意外删除的规范方法是使用alias rm="rm -i"其他几个答案中提到的方法。
极端情况下的极端措施...
如果您的潜意识和听起来一样恶意,它仍然可以通过使用/bin/rm来跳过别名来绕过这一点。为了防止出现这种情况,请创建一个-i在您经常工作的目录中调用的文件:
[me@home]$ touch -- -i
[me@home]$ ls
-i file1.txt file2.txt
Run Code Online (Sandbox Code Playgroud)
当 evil-you 执行时/bin/rm -rf *,通配符将扩展为以 开头的文件列表,这-i将被视为一个选项/bin/rm:
[me@home]$ /bin/rm -rf *
/bin/rm: remove regular empty file `file1.txt'?
Run Code Online (Sandbox Code Playgroud)
(当你的潜意识没有在看时,将鼠标悬停在下面的块上......)
现在让我们希望你的潜意识不知道这个
--选项......
| 归档时间: |
|
| 查看次数: |
5525 次 |
| 最近记录: |