大家好,我是良許。
今天我們討論乙個 vim 使用技巧——用 vim 讀寫遠端檔案。要實現這個目的,我們需程式設計客棧要使用到乙個叫netrw.vim的外掛程式。從 vim 7.x 開始,netrw.vim 就被設定為預設安裝的標準外掛程式了。這個外掛程式允許使用者通過 ftp、rcp、scp、http 等協議讀寫、編輯和瀏覽遠端檔案。
設定vim的工作方式(臨時)
:set (模式資訊)
:set nu www.cppcns.com— 顯示行號
:set nonu — 取消行號
:set mouse=a — 設定滑鼠可用
:set cursorline — 設定顯示行線
:help — 檢視幫助
外掛程式 netrw 是什麼?
netrw(面向網路的讀寫和瀏覽 network oriented reading, writing and browsing)外掛程式不僅支援本地和遠端終端跨網路編輯、讀寫檔案,還能支援瀏覽本地和遠端終端目錄。需要了解這個外掛程式的更多細節資訊,在 vim 會話輸入help netrw即可檢視。
下面讓我們來看看怎麼用 vim 從本地系統讀寫儲存在遠端 linux 系統上的檔案。
使用 linux 系統上的 vim 讀寫遠端檔案
讀寫遠端檔案的方法幾乎和編輯遠端檔案一樣,需要從本地系統讀取乙個遠端檔案,我們可以簡單的使用下面這個命令來開啟它:
$ vim scp:
輸入q退出檔案。
要從本地系統寫乙個遠端檔案,也是先用上述命令開啟檔案,之後再按i進入插入模式接著就可以往檔案裡寫入了。等寫完需要寫入檔案的內容之後,按esc鍵退出插入模式,然後輸入wq儲存並退出。
命令背後的執行過程實際上是用 scp 命令將遠端檔案拷貝到本地系統的/tmp目錄下,然後再開啟檔案編輯的。在你編輯完後,scp 命令再次將本地已編輯檔案拷貝回遠端系統。
要從本地檢視遠端檔案內容是否真的改動過用這一條命令:
$ ssh [email protected] cat info.txt
請注意,如果你要用遠端終端目錄的絕對路徑,應像如下所示命令一樣使用雙斜槓:
$ vim scp:
如果你已經因為安全原因改變了ssh埠,則應當顯式地說明ssh埠號,如下所示:
$ vim scp:
這裡埠 2200 就是我們自定義的埠號,大家可以根據具體情況使用自己的 ssh 埠號替代上述命令中的2200。
如果你沒有 ssh/scp 的通道,也可以用其他協議來替代,如下所示:
$ vim ftp://user@remotesystem/path/to/file
在vim會話裡讀寫遠端檔案
如果你已經進入了乙個 vim 會話,則可以使用 nread(netread)和 nwrite(netwrite)命令來讀寫遠端檔案。
假如,我們現在使用如下命令開啟本地系統的 vim 編輯器:
$ vim
接著你就進入了 vim 會話,要在本地新快取中的 vim 會話中讀乙個遠端檔案,只需要執行如下命令:
程式設計客棧:e scp:
除此之外,還可以用nread命令如下所示:
:nread scp:
或者,這樣輸入:
:nread "scp:"程式設計客棧
想要知道這個命令的詳細資訊,請在 vim 會話中輸入如下命令:
:nread ?
讀完說明檔案後,輸入:q退出檔案即可。
與之相似,要寫入遠端檔案也應先使用如下命令:
:e scp:
按i鍵進入插入模式就可以寫入和修改檔案了。
你也可以用:w建立並寫檔案,但是這個命令只能建立乙個新的空檔案:
:w scp:
寫完之後,按esc鍵退出編輯,然後輸入:wq儲存並退出檔案。
除此之外,還可以用nwrite命令建立並寫入檔案,其用法示例如下:
關於nwrite命令的詳細資訊,在vim會話中輸入如下資訊即可:
:nwrite ?
總結
linunx 在vim中使用系統剪下版
1.首先檢測vim中能否使用clipboard 剪下板 使用這條命令來檢查 vim version grep clipboard 2.如果clipboard的前面是減號,則clipboard不可用 3.使用下面的命令重新安裝這個vim影象版 sudo apt get install vim gnom...
在Vim中使用gtags
之前一直使用vim ctags cscope來弄c的 最近看同事使用gtags,覺得在搜尋方面要高階很多,網上大多都是emacs gtags的資料,而vim的則比較少,這裡搞通了之後,做個記錄。wget tar xzvf global 6.6.2.tar.gz cd global 6.6.2 con...
在visual studio中使用vim編輯程式
hehe,是我2002年寫的。只支援vc6 1.首先安裝乙個vim 2.到你的vim安裝目錄下,假設是e tools gvim cd e tools gvim cd vim61 visvim regsvr32 visvim.dll win95 98可以跳過這步 3.要是你還沒有注你的ole gvim...