VIM命令---Vi IMproved, a programmers text editor文本编辑
 
1>gedit   图形文本编辑工具
2>vim      字符界面的编辑工具
  写脚本
  修改配置文件
  新建文本文件
  ……
当我们利用vim命令去编辑文件的时候,如果存在就是打开,不存在就新建。
 
①vi     老的版本--->(最小化安装linux系统,只装vi不装vim)几乎所有的linux系统都会有
②vim  升级版本--->一般需要安装

一、vim不同模式切换

命令模式-->输入模式-末行模式-替换模式-可视模式

1、a、i、o等键:输入模式

2、:键:末行模式

3、R键:替换模式(replace)

4、v键:可视模式(visual)

 

二、输入(插入)模式

1、i 当前位置插入内容(insert)

2、a (append)

3、o 另起一行插入内容
 

三、末行模式

1、:q    =如果未对文件做改动则退出  quit

2、:q!   =放弃保存并退出

3、:wq    =保存当前文件并退出  write  quit

4、:wq!    =强制保存当前文件并退出

5、:x    =保存当前文件并退出

6、:x!    =强制保存当前文件并退出

7、:w    =保存

8、:w abc.txt =另存为 (可以使用绝对路径)

9、ZZ    =在命令模式下使用,退出并且保存

10、:X    =设置密码。退出最好使用:wq

 

四、光标移动

在末行模式下使用

  :set nu  显示行号(:set number)

  :set nonu 取消行号

:50    调到第50行

 

五、复制-粘贴-删除

u是撤销(undo)

ctrl+r 恢复  recover   redo

 

六、可视模式

  可视或者可视块模式可以复制或者删除一部分单词

1、小v    可视模式  visual

2、大V    可视行模式  VISUAL line

3、ctrl+v 可视块模式   VISUAL block

 

七、末行模式下的操作

、查找功能(高亮效果)
:set nohlsearch 取消高亮效果 (high light search)
:set hlsearch 开启高亮效果
示例:
/word 从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串
N 定位上一个匹配的被查找字符串
、替换substitute
例1:将6到8行所有的old替换为new
:,8s/old/new/g

例2:将整篇文章里的old替换为new
:%s/old/new/g 例3:替换的时候需要确认,将old替换为new
:%s/old/new/gc
y是yes :替换
n是no :不替换
a是all :全部替换
q是quit :退出不替换
l是line :替换整行的
、末行模式下对其他文件的操作
例1:打开新文件进行编辑
:e ~instal.log

例2:在当前文件中读入其他文件内容
:r /etc/filesystems
、终止文件操作
例1:撤销对文件的所有操作,重新开始
:e!
例2:把当前文件另存为/tmp目录下的hello.txt
:w /tmp/hello.txt
、多文件操作
vim .txt .txt .txt
:n 编辑下一个文件
:N 编辑上一个文件 :file 列出vim打开的文件名
"bajie" line
%a "wukong" line
# "shashidi" line
:last 最后一个
:first 第1个

:syntax enable   开启语法颜色显示效果

:syntax off          关闭语法颜色显示效果

:set hlsearch      开启查找文字的高亮效果  (high  light)

:set nohlsearch  关闭查找文字的高亮效果

:set cursorline       显示下划线的效果(光标所在行)

:set cursorcolumn 显示光标所在的列


 

Q:如何配置专属vim

A:启动vim编辑器的时候需要运行的命令,可以放到vim的配置文件里

局部配置文件:/root/.vimrc

全局配置文件:/etc/vimrc

###配置文件里面的命令,都会是写入vim末行模式的命令(类似于预操作)

例如:

shell> cat /root/.vimrc

set cursorline

set cursorcolumn

set nu

set tabstop=4  #设置vim的tab键的宽度(默认情况下是8个空格)

然后再使用vim的时候,会自动开启上面的功能

注意:如果上面的配置不需要,建议删除,不要在前面加#,会导致vim启动的时候报错

Linux轻松使用vim的更多相关文章

  1. Linux下面对于VIM编辑器的代码折叠使用与screen

    VIM设置代码折叠 1. 折叠方式 可用选项 'foldmethod' 来设定折叠方式:set fdm=*****.有 6 种方法来选定折叠:          manual           手工 ...

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

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

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

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

  4. linux文本编辑器vim大全

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

  5. Linux文本编辑器vim

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

  6. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  7. Linux command ------ vi / vim

    EDIT mode to GENERAL mode: press ESC General mode: operate file :q!    :force to close the file but ...

  8. Linux学习之Vim/Vi使用(十三)

    Linux学习之Vim/Vi使用 Vim/Vi简介 Vim/Vi工作模式 Vim/Vi基本使用 Vim/Vi应用技巧 Vim/Vi简介 Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UN ...

  9. Linux系统 vi/vim文本编辑器

    Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...

随机推荐

  1. java 线程及synchronized关键字

         从本篇开始,我们将会逐渐总结关于java并发这一块的内容,也可以理解为是我的笔记,主要来自于一些博客和java书籍中的内容,所有的内容都是来自于他们之中并且加上了我自己的理解和认识.     ...

  2. hadoop2.7.2完全分布式环境搭建

      1.先使用groupadd hadoop 建立hadoop用户组 2.新建用户,useradd -d /usr/hadoop -g hadoop -m hadoop (新建用户hadoop指定用户 ...

  3. DAX/PowerBI系列 - 父子层级(Parent-Child Hierarchy)

    DAX/PowerBI系列 - 父子层级(Parent-Child Hierarchy)参考文章见最后 难度: ◆◆◇◇◇(2星) 应用场景: 其实很多时候对数据汇总都会有层级关系的问题,不过说的不是 ...

  4. struts2(一) struts2入门

    首先推荐一本书,虽然我还没看过,但是我以后肯定会看的,<Struts+技术内幕>提取密码:kg6w .现在只是停留在会使用struts2的层次,自己也想继续深入研究,但是感觉自己的知识面还 ...

  5. Solr vs. Elasticsearch谁是开源搜索引擎王者

    当前是云计算和数据快速增长的时代,今天的应用程序正以PB级和ZB级的速度生产数据,但人们依然在不停的追求更高更快的性能需求.随着数据的堆积,如何快速有效的搜索这些数据,成为对后端服务的挑战.本文,我们 ...

  6. java中的递归

    所谓递归,是指程序调用自身,当然,递归不会无休止地调用下去,它必然有一个出口,当满足条件时程序也就结束了,不然的话,那就是死循环了. 看下面这个类,有几个递归方法,看了之后肯定会对你学习递归很有帮助的 ...

  7. 混合拉普拉斯分布(LMM)推导及实现

    作者:桂. 时间:2017-03-21  07:25:17 链接:http://www.cnblogs.com/xingshansi/p/6592599.html 声明:欢迎被转载,不过记得注明出处哦 ...

  8. ubuntu下命令使用

    sudo apt-get -f install:修复函数依赖 df -hl:查看空间使用状况 nvidia-smi:常看GPU使用率

  9. 英伟达CUVID硬解,并通过FFmpeg读取文件

    虽然FFmpeg本身有cuvid硬解,但是找不到什么好的资料,英伟达的SDK比较容易懂,参考FFmpeg源码,将NVIDIA VIDEO CODEC SDK的数据获取改为FFmpeg获取,弥补原生SD ...

  10. Linux之nc命令详解

    nc是一个强大的网络工具,可以通过yum安装 [root@LB2 ~]# which nc /usr/bin/which: no nc in (/usr/local/sbin:/usr/local/b ...