------------------------------------------------------------------------------------------------

本文内容学习自《使用vi编辑器, Lamb & Robbins编著》

本文内容概要:

set设置

.vimrc配置

vim下执行linux命令

利用linux命令来编辑当前文件

短语缩写

本文约定:

$ + 命令 表示在普通的bash的命令行下

:  + 命令 表示在vim的ex(命令)模式, 按"Ctrl" + ":" 进入

------------------------------------------------------------------------------------------------

set命令

有两种类型的选项可以使用:set命令进行修改:不是开就是关的触发选项和带数字或字符串值的选项(如页边距的位置和文件名)

一般触发选项的命令为:set cmd

关闭选项的命令为:set nocmd

上面cmd代表某种命令选项

例如,

:set ic  在搜索时忽略大小写 (ic=ignore case

)

:set noic在搜索时不忽略大小写

可以用:set all命令查看所有的选项,可以看到你设置的值或者默认值

:set option?   查看option这个选项的当前设置值

:set               显示在.vimrc文件或当前会话期间修改或设置过的选项

.vimrc文件

在Linux中,.vimrc在用户home目录下(初始时没有,要自己创建一个),可以修改这个文件。

可以把set, ab和map命令写入该文件中,那么打开vim编辑,会使用这个文件里的配置

替换环境

除了读取home目录下的.vimrc配置文件外,还可以让vim读取当前目录下的.vimrc文件,这样可以对那些适用于特殊项目的选项进行设置。

注意,可以在home目录下的.vimrc设置某些选项,然后在本地目录中取消这些设置。

执行linux命令

在vim进行编辑时,可以显示或读取任何Linux命令执行的结果。

用感叹号(!)可以制定vim创建一个shell并把它后面的内容看成Linux命令:

:!command

例如,

:!date  显示当前时间

上面的命令,只能执行一次命令,然后就返回vim编辑环境了,如果想要执行多次命令而不会返回vim编辑环境,可以用命令,

:sh

这个命令其实是新建了一个shell,可以像正常的命令行一样操作。

如果要退出shell并返回vim编辑,按 Ctrl + D

利用read(r)命令可以把Linux命令执行的结果读入到当前编辑的文件中:

:r  !date

将会把当前时间读入到编辑文件中

使用命令过滤文本

利用感叹号执行linux命令,可以让vim利用linux命令所提供的功能来编辑。

例如文件内容:

4

5

2

3

要把这几行从小到大排序,可以利用系统的sort命令:

:1, 4 !sort

将会对这四行排序

短语缩写

缩写很有用,我们经常在文件中反复输入同样长的短语,无论是在插入模式还是在命令模式下,vim和ex都有许多不同的用来保存长命令序列的方法

:ab  hw  hello world!

这个命令表示hw是hello world!的缩写,那么在插入模式或者命令模式下,只要输入hw作为一个完整的单词(不能是其他单词的一部分),就会自动拓展成hello world!

如果要取消这个缩写,可以输入

:unab hw

列出当前的所有缩写

:ab

linux中vi过滤,vim高级编辑(一)相关推荐

  1. linux vim命令pdf,Linux中vi、vim命令大全

    Linux中vi.vim命令大全 2019-11-21 16:55Linux命令大全 Linux vi 是 unix/linux 下极为普遍的一种文本编辑器. vi 有各种变种, 在不同的机器上有不同 ...

  2. 在linux中的vi中的删除操作,linux中vi和vim操作

    一.简单介绍 vi 和 vim 类似于windows的文本编辑器 所有的Linux系统都会内置vi文本编辑器 vim可以看做是vi增强版,具有程序编辑能力,支持语法高亮,代码补全,编译及错误跳转等功能 ...

  3. linux中vi和vim的区别

    它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方面: 1.多级撤销 我们知道在vi里,按 u只能撤消 ...

  4. Linux中Vi和Vim区别

    它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方面: 1.多级撤消 我们知道在vi里,按u只能撤消上次 ...

  5. 用linux如何用vi编写c程序,linux中VI编写C程序。。。

    在linux中编写C程序时不像编写shell那样开头要#!/bin/bash,但是在C程序中要指定头文件(头文件是指输入输出,宏等,而且要首先声明,也是必须要开始就声明的) 写好C代码后要给C文件赋予 ...

  6. 详解Linux系统Vi 和 Vim中正常模式、编辑模式、命令模式相互转化,以及vim命令使用

    详解Linux系统Vi 和 Vim中正常模式.编辑模式.命令模式相互转化 vi 和 vim 的基本介绍 vi 和 vim 的三种常见模式 正常模式 正常模式常用命令 插入模式/编辑模式 命令行模式 v ...

  7. Linux系统中VI或VIM输入时小键盘无法使用

    Linux系统中VI或VIM输入时小键盘无法使用 问题描述 在使用Xshell.Webshell或者PuTTY连接Linux服务器时经常会用到VIM对文件进行编辑.这是就会发现,小键盘无法使用.想输入 ...

  8. Linux vi 行尾 ctrl,linux中vi使用技巧常用技巧和高级替换

    linux中vi使用技巧常用技巧和高级替换 模式切换: i,I   进入插入模式:i为从目前光标所在处插入:I为在目前所在列的第一个非空格的字符处开始插入. a,A  进入插入模式:a为从目前光标所在 ...

  9. kali linux 里vim如何使用_Kali Linux的vi编辑器/vim编辑器使用方法

    转载声明:本文为转载文章 Kali Linux系统的vi编辑器/vim编辑器的使用和CentOS有很多不同.基本使用方法如下 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(comma ...

最新文章

  1. elasticsearch 条件去重_elasticsearch去重计数
  2. Report20200828螺旋波等离子体推力器HPT模拟放电调试小结
  3. 如何动态的向数组中插入键值对_在Java中实现的一个简单“HashMap”
  4. [vue] 说说你对单向数据流和双向数据流的理解
  5. Java学习--泛型
  6. 安卓是java ios c_如何为Android和iOS使用相同的C ++代码?
  7. 【Linux】Linux用户和权限管理
  8. 把emacs的插件和配置文件备份到github上去了。
  9. 飞腾服务器自带的kvm管理,领存技术飞腾FT2000+ 2U 12盘位存储服务器
  10. java调用python脚本文件_Java实现调用jython执行python文件的方法
  11. 企业信息化建设的重要意义及注重方向
  12. MYSQL 下载安装教程
  13. lg linux电视安装软件,LG电视如何安装第三方应用软件的方法教程
  14. 3.9 使用标尺工具拉直倾斜的图片 [Ps教程]
  15. 如何打造高绩效团队?团队成功的关键要素?
  16. c语言pipe函数,pipe 函数 (C语言)
  17. PDF太大如何压缩变小?
  18. 剑道第一仙 第一千六百三十七章 何须解释
  19. 文明6/Civilization VI 全DLC解锁
  20. 三菱PLC编程与案例精讲之ST语言

热门文章

  1. C语言实用算法系列之学生管理系统_单向链表外排序_栈内数组存储链表节点指针
  2. mac 连接hbase的图形化界面_MAC安装Hbase以及Hbase基本命令
  3. python123第七章_Python入门第7/10页
  4. win10电脑开机密码忘了怎么办_Mac电脑忘记开机密码怎么办?Mac开机密码快速恢复方法...
  5. java json 解析null_解析包含null的原始json数组
  6. java去掉字符串中前后空格函数_Java去除字符串中的空格
  7. bzoj5147bzoj2121loj6701 字符串游戏
  8. pdf转换成可编辑的word转换器
  9. 关于创业公司的一些事情
  10. 常见问题摘要(生活篇)