vim儲存只讀檔案時獲得sudo許可權

王明輝發表於2019-02-11

有時使用vim時忘記輸入sudo,導致編輯了一大堆文字,最後儲存時發現是隻讀檔案,無法儲存,每次儲存都會提示read only。這時可以使用如下命令代替原有的 :wq 命令

:w !sudo tee %

命令:w !{cmd},讓 vim 執行一個外部命令{cmd},然後把當前緩衝區的內容從 stdin 傳入。

tee 是一個把 stdin 儲存到檔案的小工具。

%是vim當中一個只讀暫存器的名字,總儲存著當前編輯檔案的檔案路徑。

所以執行這個命令,就相當於從vim外部修改了當前編輯的檔案。

 

參考:

https://www.cnblogs.com/foolishnoob/p/5452052.html

相關文章