vim被称作为编辑器之神,那么在我们操作linux系统时,进行编辑操作有没有感觉心有余而力不足?今天我讲自己总结的一些vim的操作命令和大家进行一下分享,有不足之处还请指出。

vim的三种模式大家还记得吗?

  一:命令行模式

    1.当你用vim打开文件时就默认进入了命令行模式
    2.光标移动:
      字符级 上k 下j 左h 右l
      行级别 0行首 $行尾
      屏幕级 H屏幕首部 L屏幕尾部
      文档级 G文档尾行 nG文档的第n行
      删除操作:(类似win下的剪切操作)
      dd 删除光标所在当前行
      n+dd 删除光标后的几行
    3.复制:
      yy 复制光标所在当前行
      n+yy 复制光标所在的后几行
    4.粘贴:
      p
  二:编辑模式:

    1.进入编辑模式的途径

      命令行模式--a,i,o,s->编辑模式--esc-->命令行模式

      在命令行模式通过按键a,i,o,s任意一个都可以进入编辑模式,区别如下-->
        a 光标所在字符之后进入
        i 光标所在字符进入
        o 光标所在另起一行
        s 光标所在字符删除进入

  三:尾行模式也称作(末行模式):

    1.进入尾行模式的途径

      在命令模式下 :输入 : 执行的是保存与退出命令

                w --写入

                q--退出

                wq--保存并退出

                q!--强制退出不保存

                w! --强制写入

            输入 /  便进入了尾行模式,此时可以进行搜索和替换操作

              如  /var(通过n和N进行上下查找文件中"var"并高亮显示)

              替换:

              :s/bin/Bin ---替换所在行的第一个词
              :s/bin/Bin/g ---替换所在行的bin
              :%s/bin/Bin/g ---替换所有的bin

  四:额外设置的补充

    1.当我们查看长篇内容如log时会不会因为不能显示行号而郁闷呢?结下给大家介绍一下 如何显示行号
      :set nu --临时设置显示行号
      :set nonu---取消显示
    如果想持久开启:
      1.在用户家目录创建.vimrc
      2.进行 vim /root/.vimrc
        里面输入 set nu  然后按esc , wq 保存退出即可,结下打开后就发现行好显示出来咯

    2.x 和wq 功能类似 保存并推出
    3.X 加密文件 注意 不要给系统问价加密
        解除密码:设置空密码进行密码删除操作

    4尾行模式
      :u 撤销上一步

      :nu 撤销n步
      取消撤销 :ctrl + r

Linux必备操作vim的更多相关文章

  1. linux文本操作界面 vi面板如何复制一行

    linux文本操作界面 vi面板如何复制一行 1)把光标移动到要复制的行上2)按yy3)把光标移动到要复制的位置4)按p 在vi里如何复制一行中间的几个字符?如果你要从光标处开始复制 4 个字符,则先 ...

  2. linux常用操作指令

    Linux常用操作指令: 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a          列出当前目录下所有文件及目录,包括隐藏的a(a ...

  3. Linux常用操作练习

    Linux常用操作练习 练习一:安装CentOS 1.设置为1G内存(才有图形界面).10G硬盘 2.分给交换分区2G(4G一下2G,8G-32G分4G-8G) 练习二:安装CentOS迷你版 1.安 ...

  4. Linux轻松使用vim

    VIM命令---Vi IMproved, a programmers text editor文本编辑 1>gedit   图形文本编辑工具 2>vim      字符界面的编辑工具 写脚本 ...

  5. Linux系列教程(十)——Linux文本编辑器vim

    通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...

  6. 【转】Linux上vi(vim)编辑器使用教程

    Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...

  7. linux文本编辑器vim大全

    linux基础之vim编辑器 1.vim编辑器 基本介绍 vim编辑器的前身叫做vi.vi的英文名:Visual  Interface.中文解释文本编辑器,你不应该用他去打开二进制可执行文件 文本编辑 ...

  8. Linux文本编辑器vim

    目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...

  9. Linux常见操作

    前面的话 本文将详细介绍Linux常见操作 基本概念 Linux严格区分大小写,所有内容以文件形式保存,包括硬件 Linux没有扩展名的概念,不靠扩展名来区分文件类型.但有一些约定俗成的扩展名 压缩包 ...

随机推荐

  1. Ansible性能调优

    Ansible企业实战环境中,如果管理的服务器越来越多,Ansibe执行效率会变得比较慢,可以通过优化Ansible提供工作效率,由于Ansible基于SSH协议通信,SSH连接慢会导致整个基于Ans ...

  2. api-gateway实践(07)新服务网关 - 手动发布

    应用地址:http://10.110.20.191:8080/api-gateway-engine/ 一.准备工作 1.xshell登陆云主机 1.1.配置链接 1.2.链接成功 1.3.关闭防火墙 ...

  3. javascript学习(1)用户的Javascript 放在哪里和函数的绑定方式

    一.实验 1:js脚本放在那里最合适? 1.代码 1.1.test.html <!DOCTYPE html><html>    <head>        < ...

  4. SpringMvc采用 http+json 实现前后端交互

    演示列表 报文表示 一.Json请求和Json响应 实现:Spring4.1.1.RELEASE + jackson2.4.4+JQuery1.10.2 1.pom.xml <propertie ...

  5. eclipse+Maven插件报错:-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.

    问题描述: eclipse indigo+maven3.3.3+jdk1.70 maven插件执行报错:-Dmaven.multiModuleProjectDirectory system prope ...

  6. Extensions in UWP Community Toolkit - SurfaceDialTextbox

    概述 UWP Community Toolkit Extensions 中有一个为TextBox 提供的 SurfaceDial 扩展 - SurfaceDialTextbox,本篇我们结合代码详细讲 ...

  7. 理解JavaScript中函数方法

    1.函数声明和函数表达式 通过字面量创建函数的方式有两种函数声明和函数表达式: 函数声明: function sum(x, y) { var result = x + y; return result ...

  8. WKWebView使用

    WKWebView比之之前使用的UIWebView更加具有优势,UIWebView更加的笨重,UIWebView占用更多的内存,且内存的峰值更加的夸张,WKWebView加载的速度也更快,而且其更多的 ...

  9. 算法 排序lowB三人组 冒泡排序 选择排序 插入排序

    参考博客:基于python的七种经典排序算法   [经典排序算法][集锦]     经典排序算法及python实现 首先明确,算法的实质 是 列表排序.具体就是操作的列表,将无序列表变成有序列表! 一 ...

  10. 控件篇:CheckedListBox的全选与反选

    private void cbXmlAll_CheckedChanged(object sender, EventArgs e) { for (int i = 0; i < cblXmlList ...