在 vim 中编辑文件而不修改所有者

在 vim 中编辑文件而不修改所有者

我在目录中有一组由用户和组/etc/tomcat/conf拥有的文件。tomcatwww

当我使用 vim 编辑该目录中的文件时,该文件的所有权变为我的用户/组。

如何在不修改所有者的情况下更新文件?

我正在运行 CentOS 7.2:

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jun 10 2014 06:55:55)

包含补丁:1-160

答案1

从你的问题来看,我不太清楚,但我假设你对目录有写权限,/etc/tomcat/conf并且对/etc/tomcat/conf目录中的所有文件也有写权限。如果是这样的话,vim 实际上应该保持文件所有者不变,除非你的 .vimrc 中有一些非默认设置。

尝试执行:set backupcopy以查看变量的值backupcopy。如果设置为,no那就不好了,因为 vim 将重命名文件并写入一个新文件(请参阅:help backupcopy)。

如果你在目录中具有写入权限/etc/tomcat/conf,vim 应该会非常清楚地警告您它无法写入该文件,并且您只能使用 来执行此操作:w!。此外,如果是这种情况,nano 是否仍能正常工作会让我感到惊讶,因为据我所知,在这种情况下,nano 将完全无法写入。

相关内容