很多时候我都会以非超级用户的身份打开配置并进行所需的更改,但我不想承认。当我在 nano 或 vi 中保存时,就会出现权限错误。
此时,我 c/p foo 按照自己的方式操作,以便可以关闭并重新打开sudo
。
有没有办法升级为超级用户以便保存而无需在 vi 或 nano 中关闭并重新打开?
答案1
我不知道 nano 的情况,但我知道你可以在 vim 中写入你无权访问的文件。尝试运行以下命令:
:w !sudo tee %
即使您没有权限,这也会保存该文件。Nathan Long 在这里很好地解释了这是如何运作的,但我也会给出一个简短的解释。
:w
并不意味着节省, 它的意思是写。因此在这种情况下,:w !foo
意味着写入外部命令富。在本例中,外部命令是sudo tee %
,其中%
是当前文件的名称。Tee 将同时写入给定文件和 STDOUT,并且由于我们使用 sudo 运行它,因此它具有写入文件的必要权限。