Linux指令笔记-Vim编辑器

news/2024/7/21 15:09:52 标签: 编辑器, linux, vim

这里写图片描述

1. 普通模式

【h(或向左方向键)】 光标左移一个字符
【j(或向下方向键)】 光标下移一个字符
【k(或向上方向键)】 光标上移一个字符
【l(或向右方向键)】 光标右移一个字符

【[Ctrl] + f】 屏幕向下移动一页(相当于Page Down键)
【[Ctrl] + b】 屏幕向上移动一页(相当于Page Up键)

【[0]或[Home]】 光标移动到当前行的最前面
【[$]或[End]】 光标移动到当前行的末尾

【G】 光标移动到文件的最后一行(第一个字符处)
【nG】 n为数字(下同),移动到当前文件中第n行
【gg】 移动到文件的第一行,相当于”1G”
【n[Enter]】 光标向下移动n行

【[n]】 表示重复查找动作,即查找下一个
【[N]】 反向查找下一个
【x,X】 x为向后删除一个字符,相当于[Delete],X为向前删除一个字符。并把字符存在剪切板中。
【nx,nX】 x为向后删除n个字符,相当于[Delete],X为向前删除n个字符。并把字符存在剪切板中。

【dd】 删除光标所在的一整行
【ndd】 删除光标所在的向下n行

【yy】 复制光标所在的那一行
【nyy】 复制光标所在的向下n行
【p,P】 p为将已经复制的数据在光标下一行粘贴;P为将已经复制的数据在光标上一行粘贴

【:! command】 执行shell命令行下执行一个命令后的显示结果
【:r! command】 执行shell命令并将执行结果插入到文本的下一行
【:sh】 系统保持vim状态,并切换到字符模式,在字符模式下输入“exit” 可以回到vim 编辑器中。
【u】 撤消上一个操作
【[Ctrl] + r】 多次撤消
【.】 这是小数点键,重复上一个操作

【ZZ】 存盘后退出vim
【ZQ】 不保存直接退出vim

2. 编辑模式

1、进入插入模式(6个命令)
【i】 从目前光标所在处插入
【I】 从目前光标
【a】 从当前光标所在的下一个字符处开始插入
【A】 从光标所在行的最后一个字符处开始插入
【o】 英文小写字母o,在目前光标所在行的下一行处插入新的一行并开始插入
【O】 英文大写字母O,在目前光标所在行的上一行处插入新的一行并开始插入

2、进入替换模式(2个命令)
【r】 只会替换光标所在的那一个字符一次
【R】 会一直替换光标所在字符,直到按下[ESC]键为止
【[ESC]】 退出编辑模式回到一般模式

3. 命令模式

【:w】 保存文件
【:q】 离开vi
【:wq】 保存后离开
【/word】 在文件中查找内容为word的字符串(向下查找)
【?word】 在文件中查找内容为word的字符串(向上查找)
【:s /word1/word2/g】 在光标当前行查找word1字符串,并将其替换成word2
【:s /word1/word2/gc】 功能同上,只不过每次替换时都会让用户确认

【:n1,n2s/word1/word2/g】 n1、n2为数字,在第n1行到第n2行之间查找word1字符串,并将其替换成word2
【:n1,n2s/word1/word2/g】 功能同上,只不过每次替换时都会让用户确认

【:%s /word1/word2/g】 在文档所有字符串中查找word1字符串,并将其替换成word2
【:%s /word1/word2/gc】 功能同上,只不过每次替换时都会让用户确认

【:set ic】 搜索时忽略大小写
【:set noic】 取消在搜索时忽略大小写

【:set nu】 显示行号
【:set nonu】 取消显示行号
【:w newfile】 另存为
【:set fileencoding】 查看当前文件编码格式
【:set fileencoding=utf-8】 设置当前文件编码格式为utf-8,也可以设置成其他编码格式
【:set fileformat】 查看当前文件的断行格式(dos\windows,unix或macintosh)
【:set fileformat=unix】 将当前文件的断行格式设置为unix格式


http://www.niftyadmin.cn/n/773905.html

相关文章

面试题-构造队列

题目描述 小明同学把1到n这n个数字按照一定的顺序放入了一个队列Q中。现在他对队列Q执行了如下程序: while(!Q.empty()) //队列不空,执行循环 { int xQ.front(); //取出当前队头的值xQ.pop(); //弹出当前队头Q.push(x); …

java加载资源文件的两种方法

处理配置文件对于Java程序员来说再常见不过了,不管是Servlet,Spring,抑或是Structs,都需要与配置文件打交道。Java将配置文件当作一种资源(resource)来处理,并且提供了两个类来读取这些资源,一个是Class类&…

python基本数值类型简介

运算符 1、算数运算:2、比较运算: 3、赋值运算: 4、逻辑运算: 5、成员运算: - int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1&#xff…

python基本数据类型2

1.字符串 字符串可以使用下标 (索引); 就像 C 一样, 字符串的第一个字符的下标 (索引) 为 0. 索引可以是负数, 那样就会从右边开始算起.(但是要注意, -0 与 0 是完全一样的, 因此它不会从右边开始数!) 如果字符串里面有很多字符都需要转义,…

Python自带IDE——IDLE的快捷键

# 转载自:http://azaleasays.com/2009/03/11/idle-key-shortcut/, 作者:azalea。 IDLE这里指的是 An I ntegrated D eveL opment E nvironment for Python,是python自带的编辑器。 IDLE支持很多常见的快捷键命令,我觉…

Handler Timer(音乐播放器)

研究这两个的区别好久了,一个定时器用Handler做出来了,但是用timer怎么都做不出来,现在终于明白了,好开心。 这是我学到的一句话:Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。 在我们Android开发…

末尾0的个数

这是滴滴打车的一道面试题,看似简单,其实不然,有点小技巧。 我刚看到这道题的时候,感觉很简单,于是三下五除二的写好了代码。 import java.util.Arrays; import java.util.LinkedList; import java.util.Scanner; /*…

删除公共字符

又是一道特别简单,而我又忽略了小细节而导致做不出来的题目。 总结一下小知识: String类型可以不必转换为数组 ,就能用charAt(index)来取出字符串中的每个字符String中自带的判断包含关系的函数contains(CharSequence s)的参数是CharSequence…