diff --git a/vim-%E8%AE%BE%E7%BD%AE.md b/vim-%E8%AE%BE%E7%BD%AE.md new file mode 100644 index 0000000..af2509a --- /dev/null +++ b/vim-%E8%AE%BE%E7%BD%AE.md @@ -0,0 +1,45 @@ +# 通常 vimrc 在 /etc/vim/vimrc + + +用 vim ~/.vimrc + +在 Debian(以及大多数 Linux 系统)中,将一个普通用户目录下的文件内容追加到系统级配置文件(如 /etc/vim/vimrc)的末尾,需要使用超级用户权限(sudo)。 + +由于直接使用重定向符号 >> 时,权限提升只对命令生效,对重定向操作不生效,因此推荐使用 tee 命令。 + +以下是具体的操作步骤: + +1. 推荐方法:使用 tee -a +打开你的终端,输入以下命令: + +Bash +cat ~/.vimer | sudo tee -a /etc/vim/vimrc > /dev/null +命令原理解释: + +cat ~/.vimer:读取你个人目录下的 .vimer 文件内容。 + +|:管道符,将前面命令的输出作为后面命令的输入。 + +sudo:以管理员权限执行后面的命令(系统会提示你输入密码)。 + +tee -a /etc/vim/vimrc:tee 命令用于读取标准输入并将其写入文件。-a (append) 参数表示追加到文件末尾,而不是覆盖原文件。 + +> /dev/null:tee 命令默认也会将内容输出到终端屏幕上。加上这个是为了将屏幕输出丢弃,保持终端界面整洁(如果你想在屏幕上看到追加的内容,可以去掉这一部分)。 + +2. 备选方法:使用 sh -c +如果你更习惯使用重定向符号 >>,可以通过让 sudo 启动一个拥有 root 权限的子 Shell 来执行整个追加命令: + +Bash +sudo sh -c 'cat ~/.vimer >> /etc/vim/vimrc' +命令原理解释: + +sudo sh -c '...':以管理员权限运行一个 shell 环境,并执行单引号内的完整命令。 + +cat ~/.vimer >> /etc/vim/vimrc:在拥有 root 权限的 shell 中,安全地将内容追加(>>)到目标文件中。 + +💡 安全建议:操作前备份 +/etc/vim/vimrc 是全局配置文件,影响系统上的所有用户。在修改系统配置文件之前,养成备份的好习惯是非常重要的。建议在执行上述命令前,先运行一次备份命令: + +Bash +sudo cp /etc/vim/vimrc /etc/vim/vimrc.bak +这样如果追加的内容导致 Vim 出现错误,你可以随时通过 sudo cp /etc/vim/vimrc.bak /etc/vim/vimrc 恢复原状。 \ No newline at end of file