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

猜你喜欢

转载自blog.csdn.net/zhang918784312/article/details/79783486