rm 命令删除前不询问

rm 命令删除前不询问

我有使用 XEN + OpenVZ 虚拟化创建的 centos VPS。

-bash-3.2# uname -a
Linux host.domain.com 2.6.18-274.7.1.el5.028stab095.1xen #1 SMP Mon Oct 24 22:10:04 MSD 2011 i686 i686 i386 GNU/Linux

当我想删除文件时没有任何问题

-bash-3.2# vi test.txt
-bash-3.2# rm test.txt
-bash-3.2#

主服务器(不是虚拟化服务器)在删除任何文件之前会先询问我。

[root@main ~]# vi test.txt
[root@main ~]# rm test.txt
rm: remove regular file `test.txt'? y
[root@main ~]#

如何配置虚拟化环境以在删除任何文件之前提示我?

谢谢。

更新:我不想对每个 rm 命令使用 rm -i。bashrc 被选为答案。

固定的:

我正在.bashrc.bash_profile主服务器复制

我)#vi .bashrc

输入以下内容:

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

ii)将默认 bash 配置文件复制到用户路径

cp /etc/skel/.bash_profile /root/

參考文獻:http://www.howtoforge.com/forums/showthread.php?t=50751

现在我的壳变成了[root@servername ~]#

答案1

默认的 CentOS .bashrc 包含以下内容:

# cat .bashrc
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

在您的示例中,您的提示符看起来像-bash-3.2#。这表明缺少 .bashrc,或者您成为 root 时没有正确采用 root 的环境。

答案2

使用“rm -i”。

您可以使用 bash 别名。只需附加

alias rm='rm -i'

到你的 ~/.bashrc 并运行

. ~/.bashrc

答案3

如果您想在删除文件或目录之前提示。您需要使用

rm -i

如果你还想有目录提示

rm -ri

您可以按照 Dmitry 的示例将其添加到您的 .bashrc 中。

相关内容