自学linux——3.编辑器vim的使用
编辑器之神——vim
一、 vim的三种模式
1.命令模式(打开文件后默认模式)
不能直接对文件编辑,可以输入快捷键进行一些操作
2.编辑模式
对文件的内容进行编辑
3.末行模式(尾行模式)
可以在末行输入命令对文件进行操作
二、 vim打开文件的四种方式
1.#vim 文件路径 打开指定的文件
2.#vim +数字 文件路径 打开指定的文件,并且光标移动到指定行
3. #vim +/关键词 文件路径 打开指定的文件,并且高亮显示关键词
4. #vim 文件路径1 文件路径2 文件路径3 同时打开多个文件
退出方式:shift + :输入q 按下enter
三、 模式间的切换

四、 命令模式(打开文件后默认模式)
1.光标移动
光标移动到行首 shift + 6(不是小键盘上的数字)
光标移动到行尾 shift + 4(不是小键盘上的数字)
光标移动到首行 gg
光标移动到末行 G
向上翻屏 Ctrl + b 或者 Pgup
向下翻屏 Ctrl + f 或者 Pgdn
2.复制粘贴
粘贴:在想要的地方按下“p”(小写)
复制光标所在行 yy
以光标行为准(包含当前行),向下复制指定行数 数字yy
可视化的选择 Ctrl + v,移动光标
3.剪切删除
剪切删除光标所在行 dd
以光标行为准(包含当前行),向下删除指定行数,下行上移 数字dd
以光标行为准(包含当前行),向下删除指定行数,下行不移 D
4.撤销恢复
撤销:输入:u(undo)
恢复:ctrl + r
5.扩展内容
(1)快速将光标移动到指定行 数字 G
(2)以当前光标为准向上/下移动n行 数字 ↑/↓
(3)以当前光标为准向左/右移动n字符 数字 ←/→
(4)末行模式下的快速移动方式:移动到指定行 :(英文:)数字 回车
五、 末行模式
进入方式:在命令模式下,按下“:”(英文)
退出方式:按1下esc或按2下esc或删除末行全部字符
1.保存操作
输入:“:w” 保存文件
输入:“:w 路径” 另存为
2.退出操作
输入:“:q” 退出文件
3.保存并退出
输入:“:wq” 保存并退出
4.强制退出(!)
输入:“:q!” 强制退出,不做保存
5.调用外部命令
输入:“:!外部命令”
6.搜索查找
输入:“/关键词”
在搜索的结果中切换上/下一个结果:N/n(next)
取消高亮,则需要输入:“:nohl”
7.替换(%表示整个文档 g表示全局)
“:s/搜索的关键词/替换的关键词” 替换光标所在行的第一处符合条件的内容
“s/搜索的关键词/替换的关键词/g” 替换光标所在行的全部符合条件的内容
“%s/搜索的关键词/替换的关键词” 替换整个文档中每行第一个符合条件的内容
“%s/搜索的关键词/替换的关键词/g” 替换整个文档中符合条件的内容
8.显示行号
输入:“:set nu” 关闭:“:set nonu”
9.扩展内容:使用vim同时打开多个文件,在末行模式进行切换文件
查看当前已经打开的文件名称:“:files”
切换指定文件的方式:“:open 已经打开的文件名”
切换上/下一个文件的方式:”:bp“/:bn”
六、 编辑模式(最简单的模式)
在命令模式下,按i,a,o,I,A,O,S进入编辑模式,退出按1下esc。
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入
I:在光标所在行的行首开始插入,如有空格则在空格之后插入
A:在光标所在行的行尾开始插入
O:在光标所在行的上面另起一新行插入
S:删除光标所在行并插入
七、 实用功能
1.代码着色(默认着色)
关闭显示:syntax off
打开显示:syntax on
2.计算器的使用
进入编辑模式——按下“ctrl+R”,输入“=”——输入需要计算的内容——回车
3.Vim的三种配置
(1) 在文件打开时在末行模式下输入的配置(临时的)
(2) 个人配置文件(~/.vimrc,没有新建)
touch .vimrc—vim .vimrc—a—set nu(显示行号)—esc—:wq—vim .vimrc
(3) 全局配置文件(/etc/vimrc,自带)
针对同一个配置项,个人配置文件中存在,则以个人配置文件为准,个人配置文件中不存在,则以全局文件为准。
4.异常退出
解决办法:将交换文件(编程过程中产生的临时文件)删除即可
查看临时文件:ls -a
删除临时文件:rm -f .passwd.swp
5.别名机制
作用:创建一些属于自己的自定义命令
别名机制依靠一个别名映射文件:~/.bashrc
vim ~/.bashrc—a—alias 自建=‘原有’(注意创建的位置)—esc—:wq(关闭终端,新开终端生效)

6.退出方式
在vim中退出编辑的文件可以使用“:q”(退出)或“:wq”(保存退出)或“:q!”(强制退出)还可以用“:x”(小写,保存退出,常用)
“:X”(大写,用于文件加密操作)
自学linux——3.编辑器vim的使用的更多相关文章
- Linux系列教程(十)——Linux文本编辑器vim
通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...
- Linux文本编辑器vim
目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...
- linux文本编辑器vim大全
linux基础之vim编辑器 1.vim编辑器 基本介绍 vim编辑器的前身叫做vi.vi的英文名:Visual Interface.中文解释文本编辑器,你不应该用他去打开二进制可执行文件 文本编辑 ...
- Linux 文本编辑器 vim
第五讲 文本编辑器 vim
- 10.18.1 linux文本编辑器vim
vi和vim的区别 编辑一个文本时,vi不会显示颜色,而vim会显示颜色,vi 有点类似windows记事本,简单,那么就是vim复杂编辑器,功能复杂,高亮,自动缩进(写shell/python脚本用 ...
- Linux | 文本编辑器vim
vim 编辑器介绍 vim 编辑器是一款非常棒的文本处理工具,它会默认安装在当前所有的 Linux 操作系统上面. vim 编辑器中设置了三种模式,可以极大的提高我们的工作效率: 命令模式:控制光标移 ...
- linux 文本编辑器 vim 基本操作
三种模式之间转换: 一般模式 可用于光标移动.复制粘贴.查找替换 "vim.txt"表示文件名 8L 表示8行 , 80C 表示80个字符 移动光标常用操作: h .j. k. l ...
- linux文本编辑器-VIM基本使用方法
vim [OPTION]... FILE... +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首vim + file 直接打开file,光标在最后一行 三种主要模式 ...
- Linux文本编辑器Vim使用
1. 插入 o 在光标下插入新行 a 在光标后插入 i 在光标前插入 O 在光标上一行插入新行 A 在光标行尾插入 I 在光标行首插入 2.光标定位 gg 到第一行行首 G 到最后一行 ...
随机推荐
- mysql 事务,锁,隔离机制
mysql架构 锁 为了解并发问题,引入锁,mysql中锁分为读锁和写锁,即share lock和exclusive lock.故名思义,share lock之间不互斥,share lock和excl ...
- IPVS的ICMP报文处理-由内到外
这里主要明与NAT/Masq转发模式相关的ICMP报文处理,但也会提及由于出错引发的IPVS系统主动发送的ICMP报文. 1.ICMP由外到内处理流程入口 入口函数ip_vs_in实质上挂载在netf ...
- POJ 2947 2947 Widget Factory 高斯消元
给出组件的数量n,给出记录的数量m(n就是变元数量,m是方程数量).每一个记录代表一个方程,求每个组件的生产天数. 高斯消元即可 #include <cstdio> #include &l ...
- 小程序开发 access_token 统一管理
TOKEN 定时刷新器 一.背景 对于使用过公众平台的API功能的开发者来说,access_token绝对不会陌生,它就像一个打开家门的钥匙,只要拿着它,就能使用公众平台绝大部分的API功能.因此,对 ...
- WebService:CXF的JaxWsDynamicClientFactory实现调用WebService接口
首先需要引入依赖jar包 #版本只供参考,具体看项目 <dependency> <grouId>org.apache.cxf</grouId> <artifa ...
- Mybatis学习(1)开发环境搭建
什么是mybatis MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis使用简单的XML ...
- linux学习之路第七天(压缩和解压类指令详解)
压缩和解压类 1.gzip/gunzip 指令 gzip 指令用于压缩文件, gunzip用于解压的 基本语法 gzip 文件 (功能描述:压缩文件,指令将文件压缩成*.gz文件) gunzip 文件 ...
- buu crypto 幂数加密
一.这和二进制幂数加密有些不同,可以从数字大小判断出来,超过4了,一般4以上已经可以表达出31以内了,所以是云影密码,以0为分隔符,01248组成的密码 二.python代码解密下 code=&quo ...
- 使用xcodeproj 动态插入第三方代码
# 为什么这么做? 现在有这么一个使用场景,基线能生成项目A,项目B,项目C...如果只有项目A中使用SDK_A,其他项目都不使用,这时候就需要对基线进行差分,只有当我切换到项目A时,才插入SDK_A ...
- 「AGC020F」 Arcs on a Circle
「AGC020F」 Arcs on a Circle Link 这个题非常 Amazing 啊.果然AtCoder全是智商题 首先你可以注意到数据范围真的是小得离谱,让你想要爆搜. 然后你发现不可做, ...