vim sudo権限で実行し忘れた際に強制上書きをする

Linux
スポンサーリンク

よく vim で sudo をつけ忘れていまうことがあります。

そのままだと保存ができないため、たくさん編集をしてしまったときにはショックです。

そんなときには下記コマンドを実行すると保存をすることがきます。

:w !sudo tee % > /dev/null

※下記は各項目の説明です

:w
 内容を保存するコマンド。

! sudo tee
 ! をつけるとシェルコマンドが読み出され、Vimエディタで通常のLinuxのコマンドが実行できるようになります。そのため「tee」が上書き保存なので、sudo権限で上書き保存するという意味。

%
 編集中のファイル名。

> /dev/null
 teeしは受け取った内容を標準出力にも出力しますが、それは必要がないため /dev/null に向けて削除している。

あとは下記コマンドで強制終了してください。

:q!

編集した内容は保存されています。

コメント

タイトルとURLをコピーしました