Linux学习之Vim/Vi使用

Vim/Vi简介

Vim/Vi工作模式

Vim/Vi基本使用

Vim/Vi应用技巧

Vim/Vi简介

Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。

Linux下的编辑器最常用的就是vim或者vi文本编辑。vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了很多实用的功能。?大多数的linux/unix 发行版本中都

使用 vim 代替了原来的 vi 文本编辑器。 如果是centos或者redhat系统,当系统安装完毕后,vi/vim 文本编辑器默认情况下就已经被安装了。如果是debian/ubuntu系统下,默认情况下

,vim编辑器是不会被安装的。你需要在ubuntu系统下手动安装vim编辑。

vi/vim文本编辑器是我们在linux系统下工作可以说是必须会使用的一个工具,因为linux系统的设计理念是一切皆文件,也就是说,你在linux里的任何操作都是对文件的操作,所以会经常去

操作文件,更改文件,保存文件,退出并保存文件。

Vim/Vi 没有菜单,只有命令。

Vim/Vi工作模式

命令模式:

进入:vi filename

退出::wq

插入模式:

i a o

注意:从插入模式变为命令模式,按ESC键

编辑模式:

命令以回车结束运行

注意:从编辑模式变为命令模式,按ESC键

Vim/Vi基本使用

插入命令

命令 作用

a在光标后附加文本

A在本行行末附加文本

i在光标前插入文本

I在本行开始插入文本

o在光标下插入新行

O在光标上插入新行

定位命令

命令 作用

h左移一个字符

j下移一行

k上移一行

l下移一个字符

$移到行尾

0移到行首

H移至屏幕上端

M移至屏幕中央

L移至屏幕下端

:set nu设置行号

:set nonu取消行号

gg到第一行

G到最后一行

nG 到第n行

:n到第n行

删除命令

命令作用

x删除光标所在处字符

nx删除光标所在处后n个字符

dd删除光标所在行

ndd删除光标往下n行

dG 删除光标所在行末尾的内容

D删除从光标所在处到行尾

:n1,n2d删除指定范围的行

复制和取消命令

命令作用

yy、Y复制当前行

nyy、nY复制当前行以下n行

dd剪切当前行

ndd剪切当前行以下n行

p、P粘贴在当前光标所在行下或行上

替换和取消命令

命令作用

r取代光标所在处字符

R从光标所在处开始替换字符,按Esc结束

u取消上一部操作

搜索和替换

命令 作用

/string 向前搜索指定字符串 开启搜索时忽略大小写 :set ic 关闭搜索时忽略大小写 :set noic

n 搜索指定字符串的下一个出现位置

:%s/old/new/g 全文替换指定字符串

:n1,n2s/old/new/g 在一定范围内替换指定字符串,后面g意思是在替换时是否确认,c为没有提示

r 取代光标所在处字符

R 从光标所在处开始替换字符,按Esc结束

u 取消上一部操作

保存和退出命令

命令作用

:w保存修改

:w new_filename另存为指定文件

:wq保存修改并退出

ZZ快捷键,保存修改并退出

:q!不保存修改退出

:wq!保存修改并退出(文件所有者可忽略文件的只读属性)

注意:对文件可以强行保存退出的只可能是文件所有者或者是root用户

Vim/Vi应用技巧

导入文件:r 文件名

在Vi中执行命令:!命令

在Vi中导入执行命令的结果r !命令

定义快捷键:map 快捷键 触发命令

连续行注释

替换

自定义vi使用方式

导入文件:r 文件名

可以将其他文件的内容导入到这个编辑的文件中。

在Vi中执行命令:!命令

在Vi中导入执行命令的结果r !命令

按一次回车回到编辑文件的界面内

定义快捷键:map 快捷键 触发命令

范例:

:map ^P I#

#这个快捷键的作用,按ctrl+p后光标跳到在本行开始位置,写入#,用来加注释。

:map ^B 0x

#这个快捷键的作用是光标移到行首,删除光标所在处的字符,用来删除注释。

unmap ^p 取消快捷键

连续行注释

:n1,n2s/^/#/g

:n1,n2s/#//g

:n1,n2s/^/\/\//g

替换

很容易理解,输入一个字符或者字符串,变成另一个字符串。

定义替换:ab sammail sam@

取消ab替换的定义:unab sammail

自定义vi使用方式

每一个用户都可以定义自己的vi使用方式,配置文件在每个用户的宿主目录下的/.vimrc。

root /root

user /home

linux vim命令跳到67行,Linux学习之Vim/Vi使用(十三)相关推荐

  1. Linux常用命令(本篇包括,Linux目录结构介绍、Linux Shell介绍、9个常见命令介绍、文件的概念、文件的操作(20个)、目录的操作、文件和目录的权限、文件压缩及解压缩)

    Linux常用命令(本篇包括,Linux目录结构介绍.Linux Shell介绍.9个常见命令介绍.文件的概念.文件的操作(20个).目录的操作.文件和目录的权限.文件压缩及解压缩)         ...

  2. Linux管道命令——《鸟哥的Linux私房菜》笔记

    Linux管道命令--<鸟哥的Linux私房菜>笔记 0 前言 看完书之后,总感觉不记录下来的话,很快就会忘了,然后又需要重新到处翻书找资料,所以还是把内容记录下来,方便以后复习.本文大部 ...

  3. linux df命令各项表示什么意思,linux命令介绍:df使用介绍

    linux中df命令参数功能:检查文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 语法:df [选项] 说明:linux中df命令可显示所有文件系统对 ...

  4. linux mount命令衔接,Linux mount命令详解:挂载Linux系统外的文件

    Linux mount命令详解:挂载Linux系统外的文件 <Linux挂载>一节讲到,所有的硬件设备必须挂载之后才能使用,只不过,有些硬件设备(比如硬盘分区)在每次系统启动时会自动挂载, ...

  5. Linux的命令——“cd”(内附Linux命令格式,相对路径和绝对路径)

    内容预知 目录 1.Linux的 命令格式书写 1.2 选项的用法 1.3 参数 2.绝对路径与相对路径 3.对终端中默认"[root@localhost ~]"#的认识 4.七种 ...

  6. linux 编辑文件 cat 跳到指定行,Linux基础命令(二)

    mv:将指定的文件或目录转移位置. 如果目标位置与源位置相同,则效果相当于为文件或目录改名. 常用选项: -b:当文件存在时,覆盖前,为其创建一个备份: -f:若目标文件或目录与现有的文件或目录重复, ...

  7. linux cd 命令案例,15个关于Linux的‘cd’命令的练习例子

    命令名称:cd 代表:切换目录 使用平台:所有Linux发行版本 执行方式:命令行 权限:访问自己的目录或者其余指定目录 级别:基础/初学者 1.从当前目录切换到/usr/local avi@tecm ...

  8. linux 关机命令_小猿圈Linux基础命令汇总

    科技进步的今天,互联网不断的发展,很多人学习Linux运维的时候会因为记不住一些命令从而去找一些渠道,有时候因为找不到linux的命令而烦恼,下面是小猿圈linux讲师给大家总结的linux基础命令, ...

  9. linux简单命令题目,一些简单的linux习题(可做复习用)一

    1.简述Linux的优点: 答: Linux是一个多用户多任务操作系统,每个用户对自己的资源有特定的权限,互不影响.每个用户还可以同时执行多个程序,各个程序的运行互相独立. Linux为用户提供了直观 ...

最新文章

  1. Spring Cloud Stream Binder 实现
  2. python中文意思k-【Python】 汉字转化汉语拼音pinyin
  3. 关于java中的main方法的几种写法
  4. resource.arsc二进制内容解析 之 RES_TABLE_TYPE_TYPE (Config List)
  5. java 不能执行mysql存储过程_java无法执行mysql中的函数及存储过程的.sql备份文件...
  6. jooq 入门_jOOQ,H2和Maven入门
  7. Git生成ssh密钥
  8. 小强的HTML5移动开发之路(27)—— JavaScript回顾2
  9. python自我复制的程序_Python自我
  10. linux下config文件,linux config 文件
  11. CAD如何完成10以上带圈序号的输入?
  12. 国内最知名的PHP开源网站管理系统,国内最强十款开源网站管理系统
  13. 计算机视觉论文-2021-11-03
  14. Java中常见的5种WEB服务器介绍以及性能配置要点总结
  15. 计算机cpu占用率高,CPU占用率高怎么解决?Win10系统电脑CPU占用率100%的解决方法...
  16. 2017年sfdc工作总结_Duplicate, Matching Rule
  17. 怎么制作位置分布图,怎么画网点分布图
  18. POI生成word文档,图片显示为空白或不显示
  19. Ubuntu下安装Canon打印机驱动程序
  20. 华为铁三角:浅聊铁三角模式的角色边界

热门文章

  1. www(apache)服务器的基本设置
  2. 大二上数据结构复习2
  3. zoj 1088 System Overload
  4. L-BFGS算法/Broyden族/BFGS算法/阻尼牛顿法的Python实现代码
  5. 有史以来最详细 安装部署Kubernetes Dashboard (补充解决官方出现的一些RBAC CERT等问题)
  6. win10雷电3接口驱动_技嘉推出B550 主板首发雷电3接口:40Gbps速率、Intel主控
  7. java实现多对多关系的方法_Hibernate一对多关联双向关联代码实现分享
  8. Mysql的MVCC是什么
  9. r语言 fread函数参数_R语言 第4章 初级绘图(6)
  10. 壁式框架内力计算_4种类型剪力墙的计算要点