Pau*_*erg -1 security rm files
有什么方法可以完全防止在终端中错误地执行此命令?例如,我知道 bash 有别名。有没有办法使用它们?
是的,有很多方法可以避免rm一团糟。但是,rm与其让类似的命令万无一失,不如学会负责任地使用您的 Unix 系统。
我的建议:
危险命令(处理时要特别小心rm,dd,shred,eval,等)。
除非您完全确定没有输入错误,否则不要执行任何操作。
如果您不完全理解给定的命令,请不要执行它。在继续之前阅读它的手册。
进行备份。并备份您的备份。
也就是说,你可以做这样的事情:
alias rm='rm -i'
Run Code Online (Sandbox Code Playgroud)
rm() { command rm -i "${@}"; }
Run Code Online (Sandbox Code Playgroud)
如果您传递-f选项,它不会保护您,但它适用于简单情况:
$ rm file
rm: remove regular file 'file'? y
Run Code Online (Sandbox Code Playgroud)
或者您可以编写更复杂的包装器。
这种方法的最大问题是您可能会习惯这种非标准行为,如果您需要在没有此类别名/函数/包装器的系统上工作,这可能非常危险。