を使用してファイルを作成するとvim some/path/newfile
、vimで編集できる場合がありますが、変更を保存しようとすると文句を言うだけです。
E212 Can't open file for writing.
これは、新しいファイルがシステムディレクトリにある場合にのみ発生するようです。
:w!
このエラーを上書きしません。
現在のバッファを一時的な場所に保存せずに書き込み、終了してから、sudoを使用して名前を変更するにはどうすればよいですか?
これにより、rootパスワードの入力を求められ、要求どおりに変更を保存します。
:w !sudo tee %
次に、プロンプトで(L)oadと入力して、保存後にファイルを再ロードします。
.vimrc
この行をあなたの:に追加します
cmap w!! %!sudo tee > /dev/null
そして、あなたはすることができます
:w!!
この位置に入ると、sudoを使用してファイルが書き込まれます。とても便利な。
最初にmkdirを実行してから、保存することができます。
「sudo」を使用して編集セッションを開始することにより、この問題を回避できます。
sudo vi name-of-file
堅牢で覚えやすいソリューションが必要で、プラグインをインストールしてもかまわない場合は、SudoEdit.vimを試してください-sudoまたはsuまたはその他のツールを使用してファイルを編集します。
これがWindows7以降のエディションの場合は、VIエディターを管理者として実行します。アプリケーションを右クリックし、「管理者として実行」を選択します。この問題は解決されます。さらに、エラーは管理者権限が原因です。
2つのステップでそれを試みることができます。最初にmkdir〜を使用してフォルダ「some」と「path」を作成します。次に「path」フォルダに移動し、コマンド:sudovimnewfileを使用します。次に保存します。
ファイルを保存しようとしているディレクトリが存在し、ファイルを編集する権限があることを確認してください。
:help message
Vimと入力すると、このエラーメッセージやその他のエラーメッセージの詳細を確認できます。/E212
ドキュメントが表示されたら、入力して検索してみてください。また、http: //vimdoc.sourceforge.net/htmldoc/message.htmlおよびCTRL-Fでドキュメントをオンラインで表示して見つけることもできます。
価値があるので、ファイルを保存しようとしているパーティションに十分なストレージがあることを確認することもできます。/ homeドライブの空き容量を増やす必要がありましたが、これで問題は解決しました。
私はこれが古い質問であることを知っています、しかしこれは私のためにそれを修正したものです。ファイルが不変に設定されている可能性があります。つまり、ファイルを編集できません。
あなたはこれをチェックすることができますlsattr /path/to/file.txt
chattr -i /etc/resolv.conf
不変でなくなるために使用する場合
。