1. ホーム
  2. linux

[解決済み】viの中のファイルでルート権限を取得する?[クローズド]。

2022-04-01 23:24:11

質問

<余談
閉じた。 この質問には答えられない スタックオーバーフローのガイドライン . 現在、回答は受け付けておりません。

<パス

この質問を改善したいですか? 質問内容を更新して、それが オントロピ Stack Overflowのために。

クローズド 2年前 .

設定ファイルを編集しているときに、viでファイルを開いて、保存しようとしたときに、次のように入力していないことに気づくことがよくあります。

sudo vi filename

viにsudo権限を与えて保存する方法はないでしょうか?少し前にviについて調べているときに、このことについて何か見たように記憶しているのですが、今は見つけられません。

解決方法は?

% は現在のファイル名に置き換えられるため、使用することができます。

:w !sudo tee %

( vim は、ファイルが変更されたことを検出し、再読み込みするかどうかを尋ねます。この場合 [L] ではなく、「OK」です)。

ショートカットとして、独自のコマンドを定義することができます。以下のように .vimrc :

command W w !sudo tee % >/dev/null

上記で、次のように入力できます。 :W<Enter> で保存します。これを書いてから、(私見ですが)もっと素敵な方法を見つけました。

cmap w!! w !sudo tee >/dev/null %

この方法では、次のように入力します。 :w!! と入力すると、カーソルを最後に残したままコマンドライン全体に展開されます。 % を自分の好きなファイル名に置き換えてください。