Eu acho que você quer algo assim:
:w !sudo tee "%"
Eu o vi pela primeira vez em
Eu poderia jurar que vi essa pergunta. Mas depois de olhar cada resultado de pesquisa para "vi" eu estou perplexo / preguiçoso.
Eu abri um arquivo, fiz uma edição e agora percebo que é somente leitura e abri como não-raiz.
eu faço isso ocasionalmente, e se as mudanças que eu fiz são triviais, eu apenas saio e edito novamente como root.
caso contrário, salve o arquivo em / tmp e mv / cp como root para onde ele realmente pertence mais tarde. e use chown / chgrp / chmod para corrigir a propriedade / perms.
considere adicionar esta linha ao seu vimrc:
" Remaps :SW to sudo save the current file and tell vim to reload it
command SW execute 'w !sudo tee % >/dev/null' | e! %
Experimente este link . Isso é o que você quer, eu acho