web-dev-qa-db-ja.com

rootとして開くのを忘れた後にファイルを保存する/ Sudo vi

重複の可能性:
vimをrootとして再編集

私はこの質問が尋ねられるのを見たと誓ったかもしれません。しかし、「vi」のすべての検索結果を調べた後、私は困惑/怠惰です。

ファイルを開いて編集しましたが、読み取り専用であることがわかり、root以外のファイルとして開いています。

13
MathewC

私はあなたがこのようなものが欲しいと思います:

:w !Sudo tee "%"

私は最初にそれを見ました commandlinef 。引用符は、ファイルパスにスペースが含まれている場合にのみ必要です。

34
Anthony Lewis

私は時々これを行いますが、行った変更が些細なものである場合は、終了してrootとして再度編集します。

それ以外の場合は、ファイルを/ tmpに保存し、後で実際に属する場所へのルートとしてmv/cpします。そしてchown/chgrp/chmodを使用して所有権/権限を修正します。

2
cas

この行をvimrcに追加することを検討してください。

" Remaps :SW to Sudo save the current file and tell vim to reload it
command SW execute 'w !Sudo tee % >/dev/null' | e! %
1
Alex Dergachev

これを試してください http://blog.sriunplugged.com/2009/12/how-to-save-file-in-vi-not-opened-with-Sudo/ 。これはあなたが私が推測したいものです

0
Srijith R