Vim的很多命令和功能與Linux系統(tǒng)的命令和功能及其相似,可以說(shuō)是一脈相承。Vim教程網(wǎng)(https://vimjc.com)總結(jié)了10條Linux下提高效率的小技巧,并與Vim對(duì)應(yīng)命令進(jìn)行對(duì)比。
快速移動(dòng)光標(biāo),不僅是在 Vim 下的高優(yōu)需求,也是 Linux 命令行下的常見(jiàn)工作場(chǎng)景。
例如,在 Linux 命令行下敲完了一長(zhǎng)串命令后,如果想在前面先執(zhí)行一個(gè)命令,則可以按組合鍵<Ctrl a>將光標(biāo)移動(dòng)到行首,輸入想添加的命令。
10個(gè)高效Linux技巧及Vim命令對(duì)比
Vim 下也有將光標(biāo)快速移動(dòng)到行首的實(shí)用命令。在 Vim 普通模式下,使用0可以將光標(biāo)移動(dòng)到當(dāng)前光標(biāo)所在行的行首,使用^可以在Vim下移動(dòng)光標(biāo)到當(dāng)前行的第一個(gè)非空字符。
既然有將光標(biāo)快速移動(dòng)到行首的需求,自然也有將光標(biāo)快速移動(dòng)到行尾的需求。與組合鍵<Ctrl a>對(duì)應(yīng)的命令<Ctrl e>會(huì)將光標(biāo)移動(dòng)到行尾,方便繼續(xù)輸入要執(zhí)行的命令。
10個(gè)高效Linux技巧及Vim命令對(duì)比
Vim 下也有將光標(biāo)快速移動(dòng)到行尾的命令。在 Vim 普通模式下,使用$可以將光標(biāo)移動(dòng)到當(dāng)前行的行尾,而使用A命令可以將光標(biāo)移動(dòng)到當(dāng)前行的行尾,并進(jìn)入插入模式。
個(gè)人覺(jué)得,<Ctrl r>(r 是 retrieve (檢索) 的縮寫(xiě))命令是一個(gè)非常實(shí)用的 Linux 技巧。當(dāng)需要在已經(jīng)執(zhí)行過(guò)的歷史命令中 (即history命令的結(jié)果) 查找某條命令并再次執(zhí)行該命令時(shí),可以使用<Ctrl r>調(diào)出 Linux 歷史命令的搜索窗口,并輸入要查找的目前命令進(jìn)行查找并重新執(zhí)行之。
10個(gè)高效Linux技巧及Vim命令對(duì)比
當(dāng)然可以通過(guò)history | grep xxx在已執(zhí)行的歷史命令列表中找到名為 xxx 的命令,然后復(fù)制該命令再重復(fù)執(zhí)行之。
毋庸置疑,<Ctrl r>相比上述的步驟更加高效、便捷。
Vim 里的模糊搜索插件 ctrlp 跟 Linux 終端命令行下執(zhí)行<Ctrl r>的功能非常相似。推薦將 ctrlp作為你的一個(gè)必備 Vim 插件。
刪除當(dāng)前光標(biāo)附近的一個(gè)詞,這是工作中經(jīng)常遇到的一個(gè)場(chǎng)景。在命令行輸入命令時(shí),經(jīng)常會(huì)因?yàn)檩斎胧д`或改變命令而需要進(jìn)行刪除,使用退格鍵 (Backspace) 一個(gè)個(gè)刪除字符的效率太低了,如果能一次刪除一個(gè)單詞,將會(huì)極大減少按鍵次數(shù),整體提高Linux使用效率。
10個(gè)高效Linux技巧及Vim命令對(duì)比
w表示以一個(gè)空格隔開(kāi)的字符串,這在 Vim 下也是相同的概念。推薦閱讀:Vim基于單詞移動(dòng)及Vim單詞、字串概念。
經(jīng)常在工作中需要取消已經(jīng)敲出了一長(zhǎng)串的命令。除了可以使用<Ctrl c>提前中斷本次即將執(zhí)行的命令外,還可以使用<Ctrl u>刪除命令行上所有已經(jīng)輸入的字符。
10個(gè)高效Linux技巧及Vim命令對(duì)比
個(gè)人覺(jué)得,<Ctrl u>的實(shí)用性其實(shí)不大,畢竟已經(jīng)有了組合命令<Ctrl c>能完成同樣的操作,其被大家所熟知。
注:<Ctrl c>用于中斷程序的執(zhí)行,而<Ctrl z>用于暫停程序的執(zhí)行 (可通過(guò)fg命令恢復(fù))。
在 Vim 下,可以使用dd命令快速刪除當(dāng)前光標(biāo)所在行。
當(dāng)刪除了 Linux 命令行中已經(jīng)輸入的某些字符后,可以在適當(dāng)?shù)臅r(shí)機(jī)將之再粘貼出來(lái)以便再次使用。
10個(gè)高效Linux技巧及Vim命令對(duì)比
熟悉 Vim 基本命令的都知道,y在 Vim 命令集中是yank的縮寫(xiě),表示 粘貼 功能。Vim 下經(jīng)常使用yy命令粘貼被復(fù)制的文本。
聰明如斯的你,肯定是記住了yy命令,自然也就記住了<Ctrl y>命令哦~ (這也是為什么要在本文中將這些 Linux 實(shí)用技巧與 Vim 命令進(jìn)行對(duì)比說(shuō)明的原因)
history命令記錄了 Linux 系統(tǒng)最近執(zhí)行過(guò)的歷史命令列表。如果需要重復(fù)執(zhí)行最近一條包含有 xx關(guān)鍵字 的命令,可以使用!xx關(guān)鍵字。
!真是使用 Linux 下的一個(gè)操作神器。可以使用它快速執(zhí)行一條歷史命令,既避免了重復(fù)的按鍵輸入,又減少了通過(guò)翻 “↑” 箭頭人肉查找歷史命令的工作量。
10個(gè)高效Linux技巧及Vim命令對(duì)比
如果包含有 xx關(guān)鍵字 的歷史命令有多條,且本次希望執(zhí)行的目標(biāo)命令并不是隔當(dāng)前時(shí)間最近的一條,則還可以使用!行號(hào)n的方式指定執(zhí)行history列表中行號(hào)為 n 的命令。
可以看出,!既可以使用關(guān)鍵字指定要執(zhí)行的歷史命令,也可以通過(guò)行號(hào)精確指定要執(zhí)行的歷史命令。推薦使用搜索引擎搜索關(guān)鍵字 “l(fā)inux 驚嘆號(hào)” 閱讀更多相關(guān)內(nèi)容的細(xì)節(jié)。
Vim 下好像并沒(méi)有與之功能類似的命令?
在 Linux 命令行下進(jìn)行操作時(shí),經(jīng)常遇到辛辛苦苦進(jìn)入到一個(gè)很深的目錄并執(zhí)行一些操作后,不小心輸入了cd命令切換回了當(dāng)前用戶根目錄的情況。再次輸入完整的深層次目錄或通過(guò)翻 “↑” 鍵以便再次進(jìn)入該目錄顯然是一個(gè)很 “蠢笨” 的方法。
在 Linux 下,假設(shè)當(dāng)前所在目錄為 a,通過(guò)cd 某路徑命令切換到了 b 目錄后,使用cd -命令可快速切換回 a 目錄哦。
10個(gè)高效Linux技巧及Vim命令對(duì)比
在 Linux 命令行下,除了可以使用鼠標(biāo)右鍵粘貼復(fù)制的文本外,還可以使用組合鍵<Shift Insert>完成粘貼操作。
據(jù)說(shuō),極客型 Linux 玩家可以做到不使用鼠標(biāo)完成所有的日常工作。<Shift Insert>進(jìn)行文本粘貼顯然可以減少使用鼠標(biāo)的頻率。在使用 xshell 等遠(yuǎn)程終端模擬軟件時(shí),使用<Shift Insert>是不是一個(gè)更加高效、便捷的文本粘貼方法呢?
10個(gè)高效Linux技巧及Vim命令對(duì)比
注:<Ctrl Insert>用于復(fù)制已選中的命令行控制臺(tái)文本 (不是<Ctrl c>哦)。
Linux 下可以使用clear命令清空整個(gè)屏幕,<Ctrl l>可達(dá)到同樣的效果。
10個(gè)高效Linux技巧及Vim命令對(duì)比
Vim 下,zz命令可用來(lái)重繪屏幕并把當(dāng)前行顯示在窗口正中。更多Vim實(shí)用技巧,推薦閱讀《30個(gè)Vim常用命令和使用技巧整理》。
除此之外,還有一些比較不為人熟知的小技巧,例如,連續(xù)按3次Esc鍵可顯示當(dāng)前系統(tǒng)支持的所有命令,<Ctrl [相當(dāng)于Esc鍵的功能,<Ctrl i>等價(jià)于 Tab 鍵的功能等。
當(dāng)前名稱:10個(gè)高效Linux技巧及Vim命令對(duì)比
本文網(wǎng)址:http://m.newbst.com/news30/98930.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、手機(jī)網(wǎng)站建設(shè)
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源:
創(chuàng)新互聯(lián)