vim中執行shell命令小結


vim中執行shell命令,有以下幾種形式


1):!command


不退出vim,並執行shell命令command,將命令輸出顯示在vim的命令區域,不會改變當前編輯的文件的內容


例如


:!ls -l

 

特別的可以運行:!bash來啟動一個bash shell並執行命令,不需要退出vim


2):r !command


將shell命令command的結果插入到當前行的下一行


例如


:r !date,讀取系統時間並插入到當前行的下一行。


3):起始行號,結束行號 !command


將起始行號和結束行號指定的范圍中的內容輸入到shell命令command處理,並將處理結果替換起始行號和結束行號指定的范圍中的內容


例如


:62,72 !sort,將62行到72行的內容進行排序


可以只指定起始行,例如:62 !tr [a-z] [A-Z],將62行的小寫字母轉為大寫字母


當前光標所在行,除可以指定行號外,也可以用.表示,例如:. !tr [a-z] [A-Z],將當前行的小寫轉為大寫


4):起始行號,結束行號 w !command


將起始行號和結束行號所指定的范圍的內容作為命令command的輸入。不會改變當前編輯的文件的內容


例如


:62,72 w !sort,將62行到72行的內容進行排序,但排序的結果並不會直接輸出到當前編輯的文件中,而是顯示在vim敲命令的區域


特殊的可以下面這么用


:62 w !bash,將會把第62行的內容作為bash命令來執行並顯示結果,而且不會改變當前編輯的文件的內容


同樣的:. w !bash,將當前行的內容作為bash命令來執行


例如52行內容為ls -l


那么輸入:52 w !bash就跟執行!ls -l是一樣的效果,如果你用的shell是bash shell


如果輸入的是:52 !bash,那么會把第52行的內容也就是ls -l作為命令執行,同時命令的輸出結果會替換第52行的內容,注意其中的區別。vim中執行shell命令小結


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM