Às vezes acontece que eu abro um arquivo e faço algumas modificações como meu próprio usuário, sem perceber ou "esquecer" de perceber o [read-only]
aviso na linha de status (ou seja, algum /etc
arquivo de configuração aleatório como /etc/resolv.conf
).
:w!
obviamente falha nesse caso, porque meu usuário não tem permissão de gravação. Então eu tenho que :w /home/filename
sair e sudo mv ...
, muito desconfortável.
Existe uma maneira de escalar temporariamente para o root para poder salvar o arquivo aberto no momento? (dado que estou sudoers
ou posso su
diretamente)?
fonte
SuperWrite
funciona, mas faz eco do arquivo de volta para você. Ao:silent
executá- lo , você deve digitar sua senha invisivelmente.silent
parece funcionar bem?w ! tee % > /dev/null
Isso ainda ecoará o resultado do comando (uma única linha), mas não o conteúdo inteiro do buffer.tee
depois jogar fora sua saída,cat
também não funcionaria se você não quiser que o arquivo seja impresso?Eu uso o seguinte mapeamento no meu .vimrc, que acho útil:
É fácil lembrar, porque
w
é "escrever",w!
é "escrever com força" e "escrever com forçaw!!
super-duper". : Pfonte
W
, masw!!
faz muito mais sentido, deve atualizar meu .vimrc. Obrigado