Linux(九)Linux文本編輯器Vim

前言

我們前面都是用的什麼什麼命令,那我們如果要在Linux中去編輯文本,
那我們應該用什麼呢?
Linux最常用的文本編輯器命令 vim。其實最開始Linux系統的文本編輯器命令是 vi,
後來出現了一個 vi 的增強版 vim,所以實際操作中我們還是使用增強版 vim。

一、vim/vi編譯器簡介

Vim/Vi是一個功能強大的全屏幕文本編譯器(Full Screen Text Editor),
是Linux平臺上最常用的文本編譯器用於建立、編輯、顯示文本文件
(linux平臺下的編程平臺)主要用來進行一些腳本程序的編寫

二、Vim/Vi工作模式


vim 主要有三種工作模式,分別是命令模式、插入模式和編輯模式:

  • 輸入 vi 文件名 我們可以進入命令模式,輸入字符 i或者a或者o我們可以進入插入模式,
    進入插入模式之後我們可以進行文件的內容修改,修改完成之後,可以輸入 :wq 可以保存退出。

三、vim/vi編譯器的啓動和退出

3.1 vi啓動

輸入vi命令後,便進入全屏幕編輯環境,此時的狀態爲命令模式。

  • vi file1
    如果file1文件不存在,將建立此文件;如該文件存在,則將其拷貝到一個臨時緩衝區。
    光標定位在該緩衝區第1行第1列的位置上。
  • vi +N file1(N:爲數字)
    如果file1文件不存在,將建立此文件;如該文件存在,則將其拷貝到一個臨時緩衝區。
    光標定位在文件第N行第1列的位置上。
  • vi +/string file1
    如果file1文件不存在將建立此文件;如該文件存在則將其拷貝到一個臨時緩衝區。
    光標定位在文件中第一次出現字符串string的行首位置。

3.2 vi退出

建議在退出vi前,先按ESC鍵,以確保當前vi的狀態爲命令方式,
然後再鍵入“:”(冒號),輸入下列命令,退出vi。

  • :w
    將編輯緩衝區的內容寫入文件,則新的內容就替代了原始文件。
    這時並沒有退出vi,必須進一步輸入下述命令才能退出vi: “:w filename(存入指定文件) :q”
  • :wq
    即將上面的兩步操作可以合成一步來完成,先執行w,後執行q。
  • :x和ZZ
    注意:ZZ前面沒有“:”)功能與“:wq”等價。
  • :q!(或:quit)
    強行退出vi,使被更新的內容不寫回文件中。
    僅鍵入命令:q時,如vi發現文本內容已被更改,將提示用戶使用“:quit”命令退出。

四、Vi編譯器常用的命令

4.1 在文件中移動光標(在命令模式下)

1)上下左右移動光標

  • k:向上移動一行
  • j:向下移動一行
  • h:向左移動一個字符
  • l:向右移動一個字符

2)移動光標的快捷鍵

  • ^(即Shift+6):移動到當前行的開頭處
  • $(即Shift+4):移動到當前行的結尾處
  • H(大寫):使光標移動到屏幕的頂部
  • M(大寫):使光標移動到屏幕的中間
  • L(大寫):使光標移動到屏幕的底部
  • Ctrl+b:上滾一屏
  • Ctrl+f:下滾一屏
  • Ctrl+d:下滾半屏
  • Ctrl+u: 上滾半屏

4.2 插入命令

執行下面命令是從命令模式進入到插入模式,進行編寫文本

  • 添加
    輸入a後,在光標的右邊插入文本
    輸入A,在一行的結尾處添加文本
  • 插入
    通過在命令模式下輸入i,在光標的左邊插入文本
    通過在命令模式下輸入I,在行首插入文本
  • 插入新行
    輸入o,在當前光標位置下面打開一行
    輸入O,在當前光標位置上面打開一行

4.3 刪除命令

命令模式下執行

  • 刪除一個字符
    爲刪除一個字符,需將光標放置在要刪除的字符上並輸入x
    爲刪除光標之前(其左邊)的一個字符,需輸入X
  • 刪除一個詞或詞的部分內容
    爲刪除一個詞,需將光標放置到該詞的開頭並輸入dw
    爲刪除詞的部分內容,將光標放到該詞要保存部分的右邊。輸入dw來刪除餘下的部分
  • 刪除1行
    將光標放置到該行的任意處並輸入dd;刪除多行:ndd
  • 刪除行的部分內容
    光標放置到該行要保存部分的右邊,並輸入D。
    爲刪除光標左邊的所有內容,須將光標放置到該行要刪除部分的右邊,並輸入d0(d-零)。
  • 刪除到文件的結尾
    爲刪除從當前行到文件結尾的所有內容,需輸入dG

4.4 複製和剪切命令

  • 複製一行命令:yy
  • 粘貼命令:p
  • 移動文本:先將要移動的部分用刪除命令刪除,然後再粘貼就可以了
  • 複製指定文件的內容(使用底行模式)::r filename

4.5 替換和取消命令

4.6 搜索和搜索替換命令

  • 查找一個字符串
    1)輸入/,並在/後面輸入要查找的串,然後按下回車
    2)輸入“n”跳轉到該串的下一個出現處
    3)輸入“N”跳轉到該串的上一個出現處
  • 替換一個字符串
    1)在一行內替換頭一個字符串old爲新的字符串new::s/old/new
    2)在一行內替換所有的字符串old爲新的字符串new::s/old/new/g
    3)在兩行內替換所有的字符串old爲新的字符串new::#,#s/old/new/g
    4)在文件內替換所有的字符串old爲新的字符串new::%s/old/new/g
    5)進行全文替換時詢問用戶確認每個替換需添加c選項::%s/old/new/gc(需按兩次回車)

4.7 保存和退出命令

4.8 定位命令


我們定位到最後一行也可以用:shift+g

發佈了54 篇原創文章 · 獲贊 18 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章