工具 --- Vim

Vim介绍

  • 介绍:一个很好用的文件编辑器。
  • 作用:打开文件编辑并保存退出文件
  • 使用:vim 文件名
  • 说明:如果文件不存在,则先打开文件编辑,然后关闭时新建此文件
  • 示例:
    • vim gyp.txt
    • vim gyp.txt +5  打开文件,将光标移动到第4行;如果文件不存在,没有效果
    • vim gyp.txt +    打开文件,将光标移动到末行; 如果文件不存在,没有效果
  • vim ~/.vimrc  配置文件
  • 非法关闭:当非法关闭正在编辑的文件时,再次打开此文件会有提示信息
  • 解决办法:
    • 点击enter进入文件
    • 保存上次写的内容 : vim -r gyp.txt
    • 将产生的交换文件删除:rm .gyp.txt.swp

转换关系

  • 命令模式-->输入模式:a A、i I、o O、s S
  • 输入模式-->命令模式:ESC
  • 命令模式-->末行模式:shift + :
  • 末行模式-->命令模式:ESC

模式类型

命令模式  [vim打开文件即可进入命令模式]

  • 移动光标
    • $    :光标快速定位到 本行行尾
    • ^    :光标快速定位到 本行行首
    • w   :向后一次移动一个字
    • b    :向前一次移动一个字
    • gg  :光标快速定位到 第一行行首
    • ngg :光标快速定位到 第n行行首
    • G    :光标快速定位到 末行行首
    • M   :光标移动到 中间
    • L    :光标移动到 最后一行行首
    • h,j,k,l  :左,下,上,右移动光标
    • ctr + d,ctr + u  :向上、向下翻半屏
    • ctr + f,ctr + b   :向下,向上翻一屏
    • 上、下、左、右   :移动光标
  • 删除命令
    • x  :删除光标后一个字母
    • X  :删除光标前一个字母
    • dd  :删除光标所在行
    • ndd  :删除指定的行数
    • d0  :删除光标前本行所有内容,不包含光标所在字符
    • dw  :删除光标开始位置的字,包含光标所在的字符
  • 撤销命令
    • u  :一步一步撤销
    • ctr + r  :反撤销
  • 重复命令
    • .  :重复上次操作的命令
  • 复制粘贴
    • yy  :复制当前行
    • nyy  :复制n行
    • p  :在光标所在位置向下新开辟一行 粘贴
  • 剪切粘贴,删除命令相当于剪切
    • p  :在光标所在位置向下新开辟一行 粘贴
  • 可视模式
    • v  :按字符移动,选中文本。按行移动选中文本,可视模式可以配合 d,y,>>,<< 实现文本块的删除、复制、左右移动 
  • 文本行移动
    • shift + >>  :文本行 右移
    • shift + <<  :文本行 左移

输入模式

  • 按ESC后按 a  :从光标之后开始输入
  • 按ESC后按 A  :从光标所在行的末尾开始输入
  • 按ESC后按 i   :从光标之前开始输入
  • 按ESC后按 I   :从光标所在行第一个非空字符开始输入
  • 按ESC后按 o  :从光标所在行下一行,另起一行开始输入
  • 按ESC后按 O :从光标所在行上一行,另起一行开始输入
  • 按ESC后按 s  :删除光标所在字符开始输入
  • 按ESC后按 S  :删除光标所在行开始输入

末行模式

  • 进入末行模式: shift + :
  • 光标
    • n  :光标跳转到第n行
  • 存储
    • w  :保存文件
    • wq:保存并退出文件
    • x  :保存并退出文件
    • q! :强制退出,不保存文件
  • 查询
    • /  :正向查找,按n查找下一个。如:/gyp
    • :反向查找,按n查找上一个。如:?gyp
  • 替换
    • s/gyp/ls     :将光标所在行的第一个gyp替换成ls
    • s/gyp/ls/g  :将光标所在行的所有gyp替换成ls
    • n,s/gyp/ls   :将指定行的第一个gyp替换成ls
    • n,s/gyp/ls/g  :将指定行的所有gyp替换成ls
    • %s/gyp/ls     :将每一行的第一个gyp替换成ls
    • %s/gyp/ls/g  :将每一行的所有gyp替换成ls
  • 设置
    • set nu    :显示行号
    • set nonu :取消显示行号

 

 

 

 

 

 

 
posted @ 2020-01-08 10:01  Tom's  阅读(151)  评论(0编辑  收藏  举报