光标移动,模式切换,删除,查找,复制,粘贴,撤销

vim的三种模式(重点)

vim存在的三种模式 命令模式,编辑模式,尾行模式

命令 模式:不能直接编辑。但是可以用快捷键进行一些操作(删除,复制,移动)

编辑:编辑

尾行模式:可以在尾行输入命令对文件进行操作(搜索,替换,保存,退出,撤销,高亮)

vim打开文件的方式4种

Vim +文件 作用:打开文件

Vim + 数字 加文件的路径 作用:+移动光标的行数

Vim +/关键词 文件的路径 作用:打开指定的文件。并且高亮显示关键词

Vim 文件路径1 文件路径2 文件路径3 作用 同时打开多个文件

命令模式(默认模式)

重点:复制出一个/etc/passwd的文件

后续一切命令都是vim这个 passwd

退出:q

注意:该模式打开文件直接进入

1. 光标移动

1. 光标移动到行首
按键 shift+^
2. 光标移动到行尾
案件shift +$
正则表达式
3. 光标移动到首行
按键:gg
4. 将光标移动到末行
按键:G
5. 翻屏
向上翻:按键:ctrl+b (b efore) /pgup
向下翻:按键:ctrl+f (f orward)/pgdn

2. 复制操作

  1. 复制光标所在

    复制 :yy

    粘贴:在想要粘贴的地方按p
  2. 以光标所在行为准(包含光标所在行),向下复制制定的行数

    按键:数字yy
  3. 可视化复制

    按键:ctrl+v 按下上下左右键来选择要复制的区块,按下yy来进行复制 最后按下p粘贴

3. 剪切/删除

  1. 剪切/删除光标所在行

    按键:dd(删除 之后下一行上移)

    注意:dd严格意义是剪切 可以按p

  2. 剪切/光标所在行为准 (包含当前行)向上删除/剪切指定行

    按键:数字dd (删除下一行上移)

  3. 剪切/删除光标所在的当前行,但是删除之后下一行不上移。

    按键:D (删除之后当前行会变成空白)

  4. 撤销/恢复

    撤销:输入: u(英文小写)或者直接输入u(undo)

    恢复:ctrl+r 取消之前的撤销操作 restore

  5. 扩展1 :光标之间的快速移动

  6. 快速将光标移动到指定的行

    按键:数字G

  7. 以当前光标为准上下移动N行

    按键:数字↑ 。数字↓

  8. 以当前光标向左向右移动

    按键:数字← 数字→

  9. 末行模式下的快速移动方式,移动到指定的行

    按键:英文 : 输入数字 然后按下回车

4. 模式间的切换(重点)命令模式 末行模式 输出模式

  1. 进入方式: 由命令模式进入 按下:

    退出方式

    1. 按下esc
    2. 按下2次esc
    3. 删除末行全部内容
  2. 保存操作

    输入:“w”保存文件

    输入: w 路径 另存为

  3. 退出:“q”

    按键: q

  4. 保存并退出

    按键 :wq

强制的问题(!)

输入:q! 表示强制退出 不保存

  1. 调用外部命令(了解)

    语法:!

    例如:! Ls -la /

    当外部命令执行结束之后按下任意键回到vim编译器

  2. 搜索/查找

    输入/ 关键词 例如 /sbin

在搜索中搜寻上一个结果 N 搜寻下一个 n

n表示 next 下一个

如何需要取消高亮 则要输入:nohl

或者/一堆匹配不到的东西

  1. 替换

    :s/ 搜索的内容/替换的内容 |替换光标所在行的第一处符合条件的内容

    :s/搜索的关键词/新的内容/g |替换光标所在行符合条件的内容

    :%s/搜索的关键词/新的内容 |替换整个文档所有行数的一个

    :%s/搜索的关键词/新的内容/g |替换所有文档的符合内容

%表示整个文档

g表示全局

  1. 显示行号

    输入:set nu

    如果想取消 则输入 set nonu

  2. 扩展 打开多个文件

    查看当前已经打开的文件名称:files

在%a 的位置会有两种显示可能

%a: a=active 表示正在打开的文件

#:表示上一个打开的文件

切换文件的方式

如果需要切换到指定文件则可以用open 文件名

2.编辑模式

进入方式

1. i 在光标所在字符前开始插入
2. a在光标所在符号后插入
3. o在光标所在的下面另起1行插入
4. I在光标所在行首开始插入 如果行首有空格则在空格之后插入
5. A在光标行的行尾插入
6. O在航标所在行的上面另起一行开始插入
7. S删除光标所在行并开始插入

退出方式

esc

3.扩展功能

1. 代码着色

案例 创建c语言

如何控制着色 与否

:syntax off 语法关闭

:syntax on 开启

2.Vim中计算器的使用

当我们在编辑文件夹时需要用计算器计算公式 就需要计算器

vim继承了计算机

A 进入编辑模式

Ctrl+R 然后输出等于

3.vim配置(重点)

1. 修改配置

  1. 在文件打开时在莫行模式下输入的配置 临时的
  2. 在个人的配置文件(~!/vimrc 如果没有可以自己新建)

    a. 新建个人配置进入编辑

    b. 行号:Vim vimrc

    显示行号 set number

    c. 配置都是以个人配置为准 个人没有配置以全局为准
  3. 全局配置文件 自带 ~!/vimrc

2.异常问题

什么是异常退出:在编辑文件没有正常退出 而是直接退出终端

  1. 将交换文件删除即可(临时文件)
> Rm -f .文件名

4.别名机制

作用创建输入自己的定义命令

别名机制依靠一个别名映射文件 ~/.bashrc

Vim ~/.bashrc

Alias cls='clear'

注意要使命令生效 要重新登陆用户 或者注销

5.退出方式

Vim 退出 :除了q和wq还支持一种方式:x

  1. x在文件没有修改的情况下,直接退出,在文件修改的情况下保存并退出
  2. 如果没有被修改,但是使用了wq推出,则文件修改的修改时间会被修改,但是用x退出的话 修改时间不会被修改
    1. 会混淆修改时间

      因此建议用x来针对文件 的推出

      但是不要用X 大写的X和小写的x不一样

      X加密 取消加密再输入 空密码即可

vim编译器的更多相关文章

  1. Linux怎么安装vim编译器

    我的Linux系统是Ubantu14.04,默认的是vi编译器,现在安装vim编译器 打开终端输入:sudo apt-get install vim-gtk 一般来说就可以了,但是我的提示出现了报错: ...

  2. Vim编译器的相关知识

    Vim编译器相关知识 1.关于Vim编译器 在热门Linux操作系统中都会默认安装一款超好用的文本编辑器——名字叫“vim”,vim是vi编辑器的升级版. vim 具有程序编辑的能力,可以主动的以字体 ...

  3. Linux下VIM编译器的使用以及shell编程基础

    VIM编译器的安装与使用 vim编辑器安装 在CentOS中,执行:yum -y install vim 普通模式 h: 左移一个字符 j: 下移一行 k: 上移一行 l: 右移一个字符 PageDo ...

  4. 【CentOS】磁盘管理与vim编译器

    一.查看硬盘或目录容量 1.df  [-hmkiT] -h  查看系统磁盘使用情况 -m  使用MBytes显示结果 -k  使用KBytes显示结果 -i  查看inode -T  查看Type 2 ...

  5. Vim编译器的常用使用方法与技巧

    vim操作 插入模式         命令行模式         末行模式 命令行模式  ->   插入模式 i --->   在当前光标的前一个插入 I --->   在行首插入 ...

  6. 在cmd中使用vim编译器

    下载地址:http://www.vim.org/download.php#pc 下载GVIM,配置下path环境变量就可以在cmd中使用vim了 把vim.exe复制一份,更名为vi.exe,就可以直 ...

  7. 鸟哥的Linux私房菜——第十三章:Vim编译器

    视频链接: 土豆: B站:http://www.bilibili.com/video/av9891085/ 本章的细节还是挺多的,可是我懒啊~~

  8. vim(5)vim下wimrc的配置,解决中文乱码问题

    解决linux下vim乱码的情况:(修改vimrc的内容) 全局的情况下:即所有用户都能用这个配置 文件地址:/etc/vimrc 在文件中添加: ,ucs-bom,gb18030,gbk,gb231 ...

  9. 【Linux 操作系统】阿里云服务器 操作实战 部署C语言开发环境(vim配置,gcc) 部署J2EE网站(jdk,tomcat)

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 博客总结 : 设置SecureCRT ...

随机推荐

  1. 未关中断情况下的hardlock

    最近遇到一例crash,3.10内核,hardlock,查看对应的堆栈,中断是使能的. 查看对应的hrtimer_interrupts和hrtimer_interrupt_save的值,发现确实相等. ...

  2. 2020牛客NOIP赛前集训营-提高组(第三场) C - 牛半仙的妹子Tree (树链剖分)

    昨天教练问我:你用树剖做这道题,怎么全部清空状态呢?    我:???不是懒标记就完了???    教练:树剖不是要建很多棵线段树吗,不止log个,你要一个一个清?    我:为什么要建很多棵线段树? ...

  3. 【java】学习路径20-Date、Calender日期与时间

    简单的说,Date和Calender基本上是差不多的. 在最开始的时候只有Date,没有Calender. 在jdk不断更新的时候,发现了Date有一点缺陷,于是推出了Calender. // Dat ...

  4. java.lang.UnsatisfiedLinkError报错

    是因为使用maven时,运行web项目时,在maven的依赖包没有打包到tomcat中(out目录中),所以要手动加上

  5. 第三十三篇:关于ES6,JSON和Webpack

    好家伙 1.什么是ES6? ECMAScript是javascript标准 ES6就是ECMAScript的第6个版本 (大概是一个语法标准规范) 2.什么是JSON? JSON 是什么,在数据交换中 ...

  6. 通过IIS部署Flask项目

      本文主要介绍在Windows Server 2012R2上通过IIS部署Flask项目的过程,以及对TTFB延迟大问题的思考.关于如何申请云服务器,注册(子)域名,备案,开放云服务器端口,获取SS ...

  7. C语言的几个入门关于函数调用练习

    1.找素数(素数:除了1和本身之外不能被任何整数整除的的数)(被某数整除=除以某数是整数) 问题:输出2到200(包括2和200)的使有素数,从小到大排序. 思路:检查所有比i小的数,取余. 涉及的知 ...

  8. 国产PLM软件在创新实践中强势崛起

    近日,"璞华PLM"先后获得微度医疗.埃特斯等多个客户的订单,即使在疫情环境下也展现出了强劲的高速增长.在产品生命周期管理(PLM,Product Lifecycle Manage ...

  9. Windows 2019通过网页修改域用户密码

    对于域用户来说,定期修改密码是必须的.对于没有Exchange的组织,而且经常出差在外的人员,能及时修改密码就变得很重要了. 在Windows 2003的时候有iisadmpwd可以修改.但是这个页面 ...

  10. 使用 Loki 进行日志报警(二)

    转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247492374&idx=1&sn=d09f6db623 ...