为ce​​ntos中的所有用户添加vi到vim映射

为ce​​ntos中的所有用户添加vi到vim映射

我正在使用来自 AWS EC2 的特定 centos7 映像,由于某种原因,该映像没有安装 vim。

我已经在新启动的服务器上运行 ansible 脚本,所以我计划通过 ansible 添加 VIM。我想为所有用户设置 vi 映射到 vim 的通常行为除了根。

使用 ansible 进行 yum 安装非常简单。但是,我不确定应该将“alias vi=vim”行放在哪里。如果我将它放入 /etc/bash.rc 中,这可能也适用于 root,这是我不想要的。我需要修改哪些文件才能获得我习惯的“标准”vim 映射行为?

答案1

我不知道为什么你不希望 root 也有,alias vi=vim但这并不难做到。

您正在使用 bash,因此您可以使用 bash$UID$EUID只读变量来测试用户是否是 root...因此,基于您在以下位置添加别名的想法/etc/bash.bashrc

[ "$EUID" != "0" ] && alias vi=vim

对于其他没有这些变量的类似 bourne 的 shell,您可以使用id.例如

[ "$(id -u)" != "0" ] && alias vi=vim

答案2

事实证明我根本不需要这样做。看起来 vim 增强的 yum 包在安装时自动将 vi 配置为 vim 别名。因此,一旦我完全更新了 yum 软件包,我就得到了我想要的别名。仍不确定在哪里不过,别名已经完成。

相关内容