vi或者vim命令相关

1. vi命令

命令格式:vi 文件名
vi命令有三个模式,分别如下:

  1. 一般模式:用于打开并查看文件的内容,进入方式:vi 文件名
  2. 编辑模式:在一般模式下,按i键,进入编辑模式
  3. 命令模式:在一般模式下,按":"进入命令模式。

在命令模式下常用的命令:

  1. wq — 保存并退出
  2. q! ---- 不保存退出
  3. wq 新文件名 ---- 另存为
  4. set nuset number----显示内容行号

注: 如果文件名中有空格,则需要用引号将文件名引起来,如果文件名中有引号,则需要使用转义字符或者其他引号,以防止引号混乱。目录不可以使用命令进行编辑,并且目录不能和文件同名。

2. vim命令

vim可以认为是vi plus,不过有些linux的发行版只有vi,没有vim,下面所有的方法都适合vi操作。

2.1 命令格式

vim 文件路径+文件名:在指定路径下新建文件并打开,如果已经有了该文件,则只更新相应的时间并打开。

2.2 模式分类

vim和vim命令类似,有以下几种模式:

  1. 命令模式:刚打开文件就是命令模式,如果不确定现在所处模式,不断按esc即可进入到命令模式
  2. 编辑模式(插入模式):在命令模式下,输入AaOoIi都可以进入编辑模式
  3. 末行模式:在命令模式下,按:/进入
  4. 可视化模式:命令模式下按vVctrl+v能进入到可视化模式,进入可视化模式后可以快速选中要操作的内容。
2.3 命令模式下的常用操作
  1. hjkl键盘中上下左右四个方向键:这四个按键分别表示向左、上、下、右四个方向移动光标,其中方向键移动在vi编辑器中不适用,只在vim中可以使用。
  2. gg:按两下g键,切换到光标至所在行行首
  3. shift+g等效于G:切换到最后一行
  4. n+G:切换到第n行
  5. x:删除光标所在位置的字符,如果连续按x,就会不断的向右删除字符
  6. X:删除光标所在位置左侧的字符,如果连续按X,就会不断的向左删除字符
  7. u:撤回操作,如果一直按住u,则可以恢复到刚进入到该文件的样子,之所以可以这样,是因为打开时会创建一个.文件名.swap的隐藏临时文件,所有的操作都在该临时文件上面操作,只有在退出时才会将临时文件写入正式文件中,临时文件销毁。
  8. dd:在命令模式下,可以直接删除光标所在行,ndd其中n为数字,如5dd就是删除包含光标所在行的下面5行
  9. yy:复制光标所在行,前面加数字功能类似于上面的dd
  10. p:如果在命令模式的上一次操作中包含dd或yy这种命令,那么dd和yy所删除或者复制的那些行会被增加到光标所在行的上面
  11. P:同上,将上一次dd/yy命令删除/复制的内容粘贴到光标所在行的上一行。
2.4 编辑模式下的常用操作

在命令模式下,总共有六种不同的方法进入编辑模式,具体如下:

  1. i:从光标左侧插入文本
  2. I:从光标所在行的行首开始插入文本
  3. a:从光标所在位置右侧开始插入文本
  4. A:从光标所在行的行尾开始插入文本
  5. o:在光标所在行下面另起一行插入文本
  6. O:在光标所在行上面另起一行插入文本
2.5 末行模式下的常用操作

末行模式下常用的操作有以下的几种:

  1. 查看指定的字符串,以/开头,比如/gzy表示文件内容中查找gzy(用高亮颜色显示,如果找不到,会报错)
  2. 文本内容的替换,格式如下:
    :n1,n2s/oldcontext/newcontext/global:这个命令会将第n1行到第n2行(包含n1和n2行)中的oldcontext替换为newcontext
    :1,$s/oldcontext/newcontext/g:全文替换,其中$表示最后一行
  3. 保存文本内容:输入:w:w!可以保存文本内容,其中第二个表示强制保存。但是只要没有退出,使用u键就可以撤回操作
  4. 可以使用:q:q!来退出vim编辑器(如果修改的内容是不能正常退出编辑器的,如果使用:q!强制退出会导致编辑的内容丢失)
  5. 由于Linux是一个多用户操作系统,所以有可能出现多个用户同时编辑一个文件的情况,故此需要学会查看vim的异常状态
  6. :set numberset nu:显示行号
  7. set nonumber:不显示行号
2.6 vim异常处理

以test.txt文件为例,在vim编辑文件时,会创建一个”.test.txt.swp“的隐藏文件(这也是vim使用u能够撤回此次打开文件以后所有操作的原因),如果已经有一个用户在使用vim编辑某个文件,这时第二个shell用户也想使用vim编辑此文件时就会报这种异常,解决这种异常的方法有以下几种:

  1. 退出第一个用户的vim
  2. 查看当前系统下是否有vim进程,如果有,则kill掉

如果出现异常,在打开文件时会提示以下信息(比如在新建.swap文件时发现已经有一个文件了):

  1. D:可以直接删除掉之前编辑的内容
  2. R:可以直接恢复之前编辑的状态,恢复完之后立马保存写入(建议先用此命令)
  3. O:以只读的方式打开
  4. E:无论如何都要进行编辑
    vimtutor:可以查看vim的帮助文档
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值