linux------vim命令

发布于:2024-12-22 ⋅ 阅读:(13) ⋅ 点赞:(0)

一、基本模式切换

  1. 普通模式(Normal Mode)

    • 当你打开Vim时,默认进入普通模式。在这个模式下,可以使用各种命令来移动光标、删除文本、复制粘贴等操作。
    • 例如,使用hjkl来移动光标。h是向左移动一个字符,j是向下移动一行,k是向上移动一行,l是向右移动一个字符。
  2. 插入模式(Insert Mode)

    • 要进入插入模式,可以按i(在光标当前位置插入)、a(在光标后一个字符位置插入)、o(在当前行的下一行插入新行并进入插入模式)等。
    • 例如,在普通模式下按i,然后输入文本,就可以开始编辑文件内容。比如输入“Hello, World!”。
  3. 命令行模式(Command - Line Mode)

    • 从普通模式进入命令行模式可以按:。在这个模式下,可以执行一些高级的命令,如保存文件、退出Vim等。
    • 例如,要保存文件可以在命令行模式下输入:w(write的缩写),然后按回车键。如果要保存文件并退出,可以输入:wq(write and quit)。

在这里插入图片描述

二、光标移动命令

  1. 字符级别移动

    • 除了hjkl,还可以使用w(移动到下一个单词的开头)、b(移动到上一个单词的开头)。
    • 例如,有文本“the quick brown fox jumps over the lazy dog”,如果光标在“the”的“t”上,按w会将光标移动到“quick”的“q”上,按b会将光标移回“the”的“t”上。
  2. 行级别移动

    • 0(数字零)将光标移动到行首,$将光标移动到行尾。
    • 例如,对于一行文本“Vim is a powerful text editor”,在普通模式下按0,光标会移到“V”上,按$光标会移到“r”上。
  3. 屏幕级别移动

    • Ctrl + u(向上滚动半屏)、Ctrl + d(向下滚动半屏)、Ctrl + b(向上滚动一屏)、Ctrl + f(向下滚动一屏)。
    • 当文件内容较长时,这些命令可以方便地浏览文件的不同部分。

三、文本编辑命令

  1. 删除操作
    • x删除光标所在位置的字符,dd删除整行。
    • 例如,有文本“abcdef”,光标在“c”上,按x后文本变为“abdef”。如果有三行文本:
    line1
    line2
    line3
    
    光标在第二行,按dd后,文件内容变为:
    line1
    line3
    
  2. 复制和粘贴操作
    • yy复制当前行,p(小写)在光标后粘贴,P(大写)在光标前粘贴。
    • 例如,有文本“line1”和“line2”,光标在“line1”上,按yy复制该行,然后将光标移到“line2”的下一行,按p,文件内容变为:
    line1
    line2
    line1
    

四、查找和替换命令

  1. 查找
    • 在普通模式下按/,然后输入要查找的字符串,按回车键。例如,要查找文件中的“Vim”,按/Vim,Vim会将光标定位到第一个匹配的位置。按n可以查找下一个匹配项。
  2. 替换
    • 命令行模式下的替换命令格式为:s/旧字符串/新字符串/。例如,要将当前行中的“old”替换为“new”,可以在命令行模式下输入:s/old/new/。如果要在整个文件中替换,可以在命令后面加上g,如:%s/old/new/g,其中%表示整个文件。

详细讲解并举例说明vim的删除命令

  1. 字符删除命令
    • x命令
      • 功能:删除光标所在位置的一个字符。
      • 示例:假设有一个文本文件内容为“abcdef”,当光标位于字符“c”时,在普通模式下按下x键,文本就会变为“abdef”。
    • X命令(大写的X
      • 功能:删除光标前一个字符。
      • 示例:如果文本内容是“abcdef”,光标在字符“d”上,按下X,文本就会变成“abcde”。
  2. 单词删除命令
    • dw命令
      • 功能:删除从光标位置开始到下一个单词开头(空格或标点符号分隔)的内容。
      • 示例:对于文本“the quick brown fox”,如果光标在“the”的“t”上,按下dw,文本会变为“quick brown fox”。
    • db命令
      • 功能:删除从光标位置开始到上一个单词开头(以空格或标点符号分隔)的内容。
      • 示例:对于文本“the quick brown fox”,光标在“quick”的“q”上,按下db,文本会变为“the brown fox”。
    • daw(delete a word)命令
      • 功能:删除整个单词(包括单词后的空格)。
      • 示例:对于文本“the quick brown fox ”(注意“fox”后面有一个空格),光标在“quick”的“q”上,按下daw,文本会变为“the brown fox ”。
  3. 行删除命令
    • dd命令
      • 功能:删除当前光标所在的整行。
      • 示例:假设有一个文本文件内容如下:
      line1
      line2
      line3
      
      当光标位于第二行“line2”时,按下dd,文本内容就会变为:
      line1
      line3
      
    • d$命令
      • 功能:删除从光标位置到行尾的内容。
      • 示例:对于文本“Vim is a great editor”,光标在“is”的“i”上,按下d$,文本会变为“Vim ”。
    • d0(数字零)命令
      • 功能:删除从光标位置到行首的内容。
      • 示例:对于文本“Vim is a great editor”,光标在“is”的“i”上,按下d0,文本会变为“is a great editor”。
  4. 范围删除命令
    • :起始行,结束行d命令(在命令行模式下)
      • 功能:删除指定范围的行。
      • 示例:假设有一个文件内容如下:
      line1
      line2
      line3
      line4
      line5
      
      如果要删除第二行到第四行,可以在命令行模式(按下:进入)下输入:2,4d,然后按下回车键,文本内容就会变为:
      line1
      line5
      

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到