启用带有强制标志的命令的确认

启用带有强制标志的命令的确认

是否有任何选项可以启用确认rm -rf。我们有一个别名设置,rm=rm -i因此每当我们删除文件时它都会要求确认,但是当提供 -f 标志时它不会要求确认。

那么,是否有任何选项可以要求确认带有强制标志的rm(或rm -r)命令,该命令适用于rm -frm -rf命令?

答案1

听起来你想禁用或强制检查参数。看看安全保证或者用函数创建别名(例如这里)。

答案2

rm -rf 是一个非常强大的命令,执行时需要非常谨慎。

这可能有助于您启用确认。

http://www.howtogeek.com/183690/enable-the-confirmation-when-deleting-files-and-folders-using-the-rm-command-in-ubuntu/

答案3

修复了使用 –f 标志的 rm 命令询问确认的问题。测试了各种删除情况并且正常运行。

您可以在.bashrc文件中添加以下脚本。

rm() {
     if [[ $* == -rf* ]]; then
           shift 1;
           command rm -rfi "$@" | more
     elif [[ ${@: -1} == -rf* ]]; then
           command rm "$@" -rfi | more
    else
           command rm -i "$@"
    fi
}

请确保没有设置 rm 的别名,否则在执行源 .bashrc 时会出现错误。

当我们在第一个和最后一个都给出 –rf 时,它会起作用,如下所示,并且它也适用于文件(因此不需要别名 rm=rm-i)

[root@localhost ~]# mkdir test
[root@localhost ~]# rm -rf test
rm: remove directory ‘test’? 
[root@localhost ~]# rm test -rf
rm: remove directory ‘test’? 
[root@localhost ~]#

相关内容