2011-10-04 124 views
2

可能重複:
How does the vim 「write with sudo」 trick work?命令解釋

很多時候,我發現自己在我結束了,對此我無權vi編輯器編輯文件的情況。因此,我們必須複製其他文件中的內容,並通過更改權限將其複製回原始文件。但是我通過搜索網絡發現了一個解決方案,我們可以發出命令:w!sudo tee%並且不需要來回複製。任何人都可以解釋這是如何工作的!

+0

@Darhazer對不起,我應該已經搜索過這個話題! – niting112

回答

6

讓我們來看看...

:w !{cmd} 

執行{cmd},飼養當前緩衝區到它的標準輸入。

這裏,{cmd}sudo tee %。執行tee {filename}root,其中{filename}是您正在編輯的文件的名稱。該命令將其標準輸入(即vim緩衝區的內容)寫入文件,如root

巧妙的把戲,順便說一句。

3

你的文件寫入命令的STDIN:

sudo tee % 

須藤升級您的權限和T STDIN寫入到文件(%替換爲當前的文件名由VIM執行命令前)