導航:首頁 > 程序命令 > vim命令使用

vim命令使用

發布時間:2022-12-14 04:57:50

『壹』 vim操作技巧

不知不覺使用vim已經有一些時間了,也算得上真正掌握使用技巧了吧。想不起來當初為什麼去學習這個編輯器,也不記得怎麼學會使用編輯文件,只記得當初按完所有的鍵盤按鍵都沒有退出vim。一顆種子要經過多少風雨才能長成參天大樹,一條小溪要經過多少高山河流才能匯入大海。我們平常學習一樣東西,要經過多少困難,多少挫折,只有自己最清楚。

普通編輯器都可以直接打開文件進行編輯、保存、使用快捷鍵等等,vim也具備這些功能,但是有些功能要在特定模式下才能使用。也是因為這些模式,讓vim學習路線變得特別比較陡峭。vim具有多種模式,每種模式都有特定功能,有時你需要某些功能時,特意切換到指定模式下操作。使用鍵盤就可以隨意切換模式,讓vim不依賴滑鼠操作,使用最小化組合鍵的操作,編輯效率大大提高。

這個模式主要功能,可以使用移動命令,擴大高亮的文本區域。輸入命令將直接作用於選中文本區域。這就相當於你用滑鼠選中一段文本區域,可以使用可以使用命令進行,復制、剪切、修改操作,但是vim並不需要滑鼠。

這個模式要在可視模式下才能進入,可以直接使用退格鍵或者空格鍵刪除選中文本區域,或者直接輸入新的文本,替換選中高亮區域進入插入模式。

平常在使用vim主要是在普通模式、插入模式、可視模式、命令模式進行操作,掌握這里基本就可以熟悉使用vim了。

掌握這些快捷鍵,移動游標得時候,手機基本不會離開核心鍵盤區,有沒有像 w , a , s , d 移動角色的感覺🙂。

要想編寫文本內容,還必須在插入模式下進行操作,以下命令由普通模式進入到插入模式

d 刪除字元(delete), d 本身沒有任何涵義,但是它可以跟其他命令組合,完成一些快速操作。

<font size=5>操作符 + 動作命令 = 操作</font>

d<span style="color:red;">{motion}</span> 命令可以對一個字元 dl 、一個完整單詞 daw 或
一整個段落 dap 進行操作,它作用的范圍由動作命令決
定。c<span style="color:red;">{motion}</span>、y<span style="color:red;">{motion}</span> 以及其他一些命令也類似,它們被統稱為操作符(operator)。

<center>Vim的操作符命令</center>

看著上面刪除操作,是不是很容易理解操作符 + 動作命令 的模式,比如我們已經知道 daw 刪除整個單詞, gU 反轉大寫,我們就可以使用 gUaw 反轉整個單詞, gUap 反轉整個段落大寫

由於vim中快捷鍵已經被change修改佔用了,只能使用 y 代表復制(yank),粘貼(put)使用 p , d 其實是將內容剪切到寄存器中,剪切實現刪除操作。 ddp 看起來是將兩行位置互換,其實先剪切當前行到寄存器中, p 粘貼到游標下的位置。主要記住使用命令 y + 動作指令 或者 d + 動作指令,都是將文本暫存到寄存器中,使用 p 或者 P 進行粘貼。進行一個小demo練習,將變數field替換下面的函數參數foo。

思路: 先使用 yw 復制field欄位,下移動foo中, dw 刪除foo, P 粘貼。但是你會發現粘貼結構居然還是foo。這是因為 dw 將刪除文本放入寄存器中,覆蓋了上面的變數。我們平常復制,剪切的文本都會暫存再無名寄存器中。

在vim中的刪除、復制、粘貼都是使用寄存器,可以使用 "{registerName} 方式命名寄存器。平時我們使用 dd , yy 命令,不指名寄存器名稱默認使用無名寄存器。倘若沒有指定要使用的寄存器,Vim將預設使用無名寄存器,它可以用雙引號表示(參見 :h quote_quote )。無名寄存器可以使用 "" 表示,比如 ""yy 相當於 yy , ""p 相當於 p

"[0-9]表示數字寄存器,數字越小表示最早在寄存器內容。例如 "0 表示第一個進入寄存器文本, "1 表示第二個進入寄存器內容,類似值棧結構,先進後出排列。可以使用 :reg 查看寄存器中內容。

在win系統中,可以在任意地方Ctrl c復制文本,vim是否可以粘貼非vim中復制內容?當然是可以的。 "+ 表示系統寄存器,可以讀取系統vim之外的系統粘貼板中的內容,可以粘貼內容,復制到系統粘貼板中去。ubuntu上需要安裝vim-gnome,才可以正常使用系統寄存器。

使用粘貼命令前面+寄存器名稱,就可以直接使用專用寄存器中的內容了,例如 "+p 直接粘貼系統剪貼板中的內容。

在插入模式使用 <Ctrl r> + 寄存器名稱粘貼字元文本。例如可以使用 <Ctrl r>" 粘貼無名寄存器中內容。

本文章有部分內容參考 《vim實用技巧第2版》 ,有興趣的同學可以買一個本來看看,真的很不錯哦!

『貳』 vim編輯命令怎麼使用

vim是一個全屏編輯器,模式化編輯器。模式主要有編輯模式,輸入模式,末行模式。默認打開vim命令進入的是編輯模式。
打開文件打開文件:vim
/path/to/somefile
其他用法:
vim
+#:打開文件,並定位到#行
vim
+:打開文件,並定位到最後一行
vim
+/pattern:打開文件,並定位到第一次被pattern匹配到的行的行首
關閉文件1、末行模式關閉文件
:q
不保存退出
:wq
保存並退出
:q!
不保存強制退出
:w
保存
:w!強制保存
:wq
-->
:x
2、編輯模式退出
ZZ
保存並退出
模式轉化1、編輯-->輸入
i:在當前游標所在字元的前面轉為輸入模式;
I:在當前游標所在字元的行首轉為輸入模式;
a:在當前游標所在字元的後面轉為輸入模式;
A:在當前游標所在字元的行尾轉為輸入模式;
o:在當前游標所在行的下面新建一行,轉為輸入模式;
O:在當前游標所在行的上面新建一行,轉為輸入模式;

『叄』 【筆記】Vim的操作

剛打開文件時Vim處於命令模式,此時文件的下方會顯示文件的一些信息,包括文件的總行數和字元數,以及當前游標所在的位置等。

例如,要將某文件中所有的"root"替換為"liudehua",則有兩種輸入命令,分別為:

注意,被刪除的內容並沒有真正刪除,都放在了剪貼板中。將游標移動到指定位置處,按下 "p"鍵,就可以將剛才刪除的內容又粘貼到此處。

某些情況下,可能需要把兩行進行連接。比如說,下面的文件中有兩行文本,現在需要將其合並成一行(實際上就是將兩行間的換行符去掉)。可以直接在命令模式中按"J"鍵。

Vim的保存和退出是在編輯模式中進行的。

需要注意的是,"w!"和"wq!"等類似的指令,通常用於對文件沒有寫許可權的時候(顯示 readonly,如圖12所示),但如果你是文件的所有者或者root用戶,就可以強制執行。

程序員在編輯程序時,經常會為將游標移動到與一個 "(" 匹配的 ")" (對於 [] 和 {} 也是一樣的)處而感到頭疼。Vim裡面提供了一個非常方便地査找匹配括弧的命令,這就是 "%"。

在編輯文件時,可以使用Vim同時打開兩個文件,每個文件分別佔用一個窗口。
例如,在査看 /etc/passwd 時需要參考 /etc/shadow,有兩種辦法可以實現:

連續行的注釋其實可以用替換命令來完成。換句話說,在指定范圍行加"#"注釋,可以使用 ":起始行,終止行 s/^/#/g",例如:

取消連續行注釋,則可以使用":起始行,終止行s/^#//g",例如:

添加"//"注釋要稍微麻煩一些,命令格式為":起始行,終止行 s/^////g"。例如:

以上方法可以解決連續行的注釋問題,如果是非連續的多行就不靈了,這時我們可以定義快捷鍵簡化操作。格式如下:

在命令模式下輸入":set nu"即可顯示每一行的行號,如果想要取消行號,則再次輸入":set nonu"即可。
如果希望每次打開文件都默認顯示行號,則可以編輯Vim的配置文件。每次使用Vim 打開文件時,Vim 都會到當前登錄用戶的宿主目錄(用戶配置文件所在地)中讀取 .vimrc 文件,此文件可以對 Vim 進行一些默認配置設定。

Vim 配置文件分為系統配置文件和用戶配置文件:

『肆』 vim模式與模式切換vim命令模式

vim有三種模式,本文介紹VIM模式與vim模式切換的方法。

vim命令 模式, 編輯模式 , 尾行模式 和文本編輯命令。

Vim編輯模式插入字元,行尾、行首插入,刪除一個字元和刪除整行命令,Vim復制和粘貼命令,vim替換輸入以及撤銷和反撤銷命令,Vim保存和另存為文件,顯示vim當前編輯文件名。

我們使用vim編輯器的常用文件操作主要是:插入、刪除、復制、粘貼、替換、撤銷、保存、另存為。

在介紹Vim中的上述基本文件操作命令前,需要先介紹下vim的操作模式。因為vim的各種對文件操作命令需要在不同操作模式下使用。

一、Vim三種操作模式

Vim編輯器一共有3種模式,分別為 命令模式 (默認)、編輯模式、尾行模式。這3種模式的轉換關系如下圖所示。

vim三種模式

1 命令模式(command mode)

命令模式是Vim的默認操作模式,當使用vim命令打開一個文件時,默認進入的就是命令模式。不管用戶處於何種模式,只要按下Esc鍵就可使進入命令行模式

2 編輯模式(input mode)

只有在vim編輯模式下,才能將鍵盤鍵入的內容輸入到當前打開的文件中

在命令模式下輸入插入命令i(insert)、附加命令a (append)、打開命令o(open)、修改命令c(change)、取代命令r或替換命令s都可以進入文本編輯模式

3 尾行模式(last line mode)

尾行模式主要用於保存文件或退出Vim,同時也可以設置編輯環境和一些編譯工作,如列出行號(set nu)、尋找字元串(/target)等

在命令模式下,用戶按冒號鍵(:)即可進入末行模式下,此時Vi會在顯示窗口的最後一行顯示一個」:「作為末行模式的提示符,等待用戶輸入命令

二、Vim文本編輯命令

約定:在沒有特殊說明的情況下,以下Vim編輯命令部分提到的命令均是在命令模式下使用。

1 vim插入命令

在命令模式下按以下按鍵可進入編輯模式,執行插入操作,具體包括:

從游標當前所在行的【行首】處開始插入:I

從游標當前所在行的【行尾】處開始插入:A

從游標當前所在行的【下一行】處開始插入:o

從游標當前所在行的【上一行】處開始插入:O

從游標當前所在位置的【前】一個字元處開始插入:i

從游標當前所在位置的【後】一個字元處開始插入:a

tips:i (insert)是在當前位置插入,a (append)表示是在後面追加

2 vim刪除命令

在命令模式下按以下按鍵可執行刪除操作,具體包括:

刪除從游標所在位置到當前【單詞結束】部分的內容並進入插入模式:cw、cW

刪除從游標所在位置到當前【單詞開始】部分的內容並進入插入模式:cb、cB

刪除從游標所在位置到當前【單詞結束】部分的內容但不進入插入模式:dw、dW

刪除從游標所在位置到當前【單詞開始】部分的內容但不進入插入模式:db、dB

刪除游標位置的【一個】字元:x

刪除當前游標所在【行】:dd

刪除從游標所在位置到當前【行首】的內容:d0

刪除從游標所在位置到當前【行尾】的內容:d$

tips:

(1) Vim的命令中,0 表示行首,$ 表示行尾,更多內容可參考卡拉圖Vim操作范圍、文件范圍介紹

(2) w(word)、b(back)命令用於游標移動,具體可參考卡拉圖:vim游標移動命令匯總

(3) cW、cB、dW、dB 命令操作的單詞是以空白字元(空格、Tab)分隔的字元串

刪除當前【段落】從游標位置開始到【段末】的內容:d}

刪除當前【段落】從游標位置開始到【段首】的內容:d{

刪除當前【句子】從游標位置開始到【句末】的內容:d)

刪除當前【句子】從游標位置開始到【句首】的內容:d(

tips:Vim命令中用 ( 和 ) 表示句子,{ 和 } 表示段落

3 vim復制命令、vim粘貼命令

在命令模式下按以下按鍵可執行復制、粘貼操作,具體包括:

將最後一次刪除或復制操作的文本內容粘貼到游標所在字元之【後】:p

將最後一個刪除或復制操作的文本內容粘貼到游標當前字元之【前】:P

復制從游標所在位置到當前【單詞結束】部分的內容:yw

復制游標所在【行】的所有字元 (包含換行符):yy

tips:yyp 操作可以實現復制一整行內容到當前所在行的下一行

4 vim替換命令

在命令模式下按以下按鍵後,再輸入字元可替換原始文件中的內容

一直替換游標所在字元,直到按下[ESC]鍵為止:R

刪除、復制操作的操作單位可以加操作次數,操作對象的范圍為:操作次數 * 操作單位

替換游標當前所在字元一次:r

例如:d3w命令表示刪除三個單詞,10dd命令表示從游標所在行開始刪除後面的十行,更多內容可以參考Vim中的操作符和動作命令。

5 vim撤銷命令、vim回退反撤銷命令

在命令模式下可執行撤銷操作

撤銷最近的一次操作:u

恢復最近的一次操作(取消撤銷):<Ctrl> + r

tips:多次執行u 命令可以連續撤銷最近的操作

6 vim保存命令

在尾行模式下執行以下命令可保存當前編輯的文件內容

保存當前編輯的文件::w

保存當前編輯的文件並退出vim::wq

強制將當前編輯的文件保存::w!

tips:上述操作是在尾行模式下執行的,所以命令都是以:開頭

7 vim另存為命令

在尾行模式下執行命令 :w a.txt 可將vim當前打開的文件另存為新文件a.txt.

tips:w(write) 表示將文件存檔,: 表示尾行模式命令。

8 vim顯示當前文件名的方法

命令 <Ctrl> + g 可顯示當前編輯文件名及行數,可以在不退出 Vim 的情況下了解當前編輯文件的信息,更多內容,可參考30個vim常用命令和使用 vim技巧 。

Vim入門級文件編輯命令匯總就先介紹到這里了,更多Vim文件編輯命令和Vim相關操作可閱讀本站其它文章內容。

『伍』 5. Linux的vi/vim使用及常用快捷鍵

命令行下,輸入vim xxx.c就會進入vim一般模式,並開始編輯這個xxx.c的文件。

    使用vim xxx.c就會默認進入vim一般模式。

    在一般模式下,按下i鍵就會進入編輯模式,也稱INSERT MODE(插入模式)。

    編輯模式中,按ESC鍵會退出編輯模式回到一般模式。

    按下:鍵就會進入命令模式。

    按下ESC鍵回到一般模式。

    命令模式下,輸入

        :wq 這個命令再按回車鍵就會保存並退出vim(write and quit)

        :q 退出vim(不會保存)

        :q! 強制退出vim(不會保存)

    yy 拷貝當前行

    5yy 拷貝當前行及下面一共5行

    p 粘貼

    dd 刪除當前行

    4dd 刪除當前行及下面一共4行

    G 定位到最後一行

    gg 定位到第一行

    快速定位到指定行號:輸入一個數字然後按下G(shift+g)

    u 撤銷前一個操作

    /xx 按下回車就會在文件中查找xx,查到會高亮第一個字元,按n會查找下一個xx

    :set nu 顯示行號

    :set nonu 取消顯示行號

    

『陸』 Linux下vim編輯器命令大全

vim可以分為三種狀態,分別是 命令行模式(command mode) 、 輸入模式(Insert mode) 和 底行模式(last line mode) ,這 3 種工作模式可隨意切換,如下圖所示。

使用vim編輯文件時,默認處於命令行模式。此模式下,可使用方向鍵(上、下、左、右鍵)或 k、j、h、i 移動游標的位置,還可以對文件內容進行復制、粘貼、替換、刪除等操作。

下圖所示是vim處於命令行模式的狀態示意圖。

在輸入模式下,vim可以對文件執行寫操作,類似於在Windows系統的文檔中輸入內容。

使vim進行輸入模式的方式是在命令模式狀態下輸入 i 、 I 、 a 、 A 、 o 、 O 等插入命令(各指令的具體功能下表所示),當編輯文件完成後按 esc 鍵即可返回命令模式。

下圖所示為vim處於輸入模式模式下的示意圖。

底行模式用於對文件中的指定內容執行保存、查找或替換等操作。

使vim切換到底行模式的方法是在 命令行模式 狀態下按 : 鍵(注意是英文符號),此時vim窗口的左下方出現一個 : 符號,這是就可以輸入相關指令進行操作了。

指令執行後vim會自動返回命令行模式。如想直接返回命令行模式,按 esc 即可。

下圖所示為vim進入底行模式後的狀態。

對於新手來說,經常不知道自己處於什麼模式。不論是自己忘了,還是不小心切換了模式,都可以按一次 esc 鍵返回命令行模式。如果你多按幾次 esc 鍵後聽到"嘀————"的聲音,則代表你已經處於命令行模式了。

打開文件

打開文件時游標處於文件尾部

打開文件時,游標定位到第幾行

字元移動

這些移動鍵都可以加上數字(5h:向左移動5個字元格)

單詞移動

行內跳轉

行間移動

在底行模式下,直接給出行號,實現跳轉

用法:起始地址,結束地址 s @要替換內容@替換後內容@gi(@分隔符)

例 :1,$s/a/A/g 把文件中全部的a換替換成A,全局替換

顯示取消行號

設定自動縮進(寫腳本時)

查找到的文本高亮顯示

語法高亮

/etc/vimrc :全局配置文件,永久有效
~/.vimrc :個人配置文件,每個用戶的家目錄中,若不存在,手動創建

對於第一次用vim的童鞋,有幾點需要提醒一下:

『柒』 vim的使用方法

命令模式:控制游標移動,可對文本進行復制、粘貼、刪除和查找等工作。

輸入模式:正常的文本錄入。

末行模式:保存或退出文檔,以及設置編輯環境。

在每次運行Vim編輯器時,默認進入命令模式,此時需要先切換到輸入模式後再進行文檔編寫工作,而每次在編寫完文檔後需要先返回命令模式,然後再進入末行模式,執行文檔的保存或退出操作。在Vim中,無法直接從輸入模式切換到末行模式。Vim編輯器中內置的命令有成百上千種用法,為了能夠幫助讀者更快地掌握Vim編輯器,表4-1總結了在命令模式中最常用的一些命令。

表4-1 Vim中常用的命令

編輯

命令 作用

dd 刪除(剪切)游標所在整行

5dd 刪除(剪切)從游標處開始的5行

yy 復制游標所在整行

5yy 復制從游標處開始的5行

n 顯示搜索命令定位到的下一個字元串

N 顯示搜索命令定位到的上一個字元串

u 撤銷上一步的操作

p 將之前刪除(dd)或復制(yy)過的數據粘貼到游標後面

末行模式主要用於保存或退出文件,以及設置Vim編輯器的工作環境,還可以讓用戶執行外部的Linux命令或跳轉到所編寫文檔的特定行數。要想切換到末行模式,在命令模式中輸入一個冒號就可以了。Vim文本編輯器

命令 作用

:w 保存

:q 退出

:q! 強制退出(放棄對文檔的修改內容)

:wq! 強制保存退出

:set nu 顯示行號

:set nonu 不顯示行號

:命令 執行該命令

:整數 跳轉到該行

:s/one/two 將當前游標所在行的第一個one替換成two

:s/one/two/g 將當前游標所在行的所有one替換成two

:%s/one/two/g 將全文中的所有one替換成two

?字元串 在文本中從下至上搜索該字元串

/字元串

『捌』 VI和VIM命令的操作

vi編輯器是分為三種狀態的

h 或 向左箭頭鍵(←) 游標向左移動一個字元
j 或 向下箭頭鍵(↓) 游標向下移動一個字元
k 或 向上箭頭鍵(↑) 游標向上移動一個字元
l 或 向右箭頭鍵(→) 游標向右移動一個字元
[Ctrl] + [d] 屏幕『向下』移動半頁
[Ctrl] + [u] 屏幕『向上』移動半頁

0 或功能鍵[Home] 這是數字『 0 』:移動到這一行的最前面字元處 (常用)
$ 或功能鍵[End] 移動到這一行的最後面字元處(常用)

gg 移動到這個檔案的第一行 (常用)
n<Enter> n 為數字。游標向下移動 n 行(常用)

n<space> 那個 n 表示『數字』,游標會向右移動這一行的 n 個字元。
n<Enter> n 為數字。游標向下移動 n 行(常用)

/word 向下尋找某個單詞
?word 向下尋找某個單詞
n 向下重復執行搜索命令
N 向上重復執行搜索命令

dd 刪除游標所在的整列
yy 復制游標所在那行
. 重復上一個動作

主要為一般模式到編輯模式的切換
i,I a,A o,O r,R 都可以實現到編輯模式的切換
其中r,R實現的是取代模式
Esc 為推出編輯模式回到常用模式

:w 編輯的數據寫入硬碟
:w! 如果未見為只讀的時候強制寫入
;q 離開
:q! 不儲存強制離開
:wq 儲存後離開
:wq! 儲存後強制離開
ZZ 若檔案沒有動過則直接離開,若檔案已動過則保存離開
:set nu 設置行號
:set nonu 取消行號

閱讀全文

與vim命令使用相關的資料

熱點內容
建築設計規范pdf 瀏覽:98
如何合並兩個pdf 瀏覽:174
刷機包必須要解壓的單詞 瀏覽:483
android課表實現 瀏覽:864
頭條app在哪裡能看見有什麼活動 瀏覽:511
冰櫃壓縮機電容80歐 瀏覽:609
安卓各個版本圖標什麼樣 瀏覽:152
無錫哪裡有製作手機app 瀏覽:538
php字元串轉json數組 瀏覽:6
數控網路編程課程有哪些 瀏覽:482
python30特效程序編碼 瀏覽:392
安卓跟蘋果互傳照片用什麼 瀏覽:848
原創小說app哪個好看 瀏覽:97
首台湖南造鯤鵬伺服器雲伺服器 瀏覽:268
redhatphp 瀏覽:456
android智能家居藍牙 瀏覽:646
pt螺紋編程 瀏覽:451
手機電音app哪個好 瀏覽:749
checksum命令 瀏覽:637
java創建xml文件 瀏覽:171