linux中vim的使用
来源:互联网 发布:巴赫旧约德语知乎 编辑:程序博客网 时间:2024/06/05 11:03
vim分为三种模式:一般模式、编辑模式、命令模式。
一般模式:在这个模式下,你可以做的操作有,上下移动光标;删除某个字符;删除某行;复制、粘贴一行或者多行。
编辑模式:从一般模式进入编辑模式,只需你按一个键即可(i,I,a,A,o,O,r,R)。当进入编辑模式时,会在屏幕的最下一行出现“INSERT或REPLACE”的字样。从编辑模式回到一般模式只需要按一下键盘左上方的ESC键即可。
命令模式:在一般模式下,输入”:”或者”/”即可进入命令模式。在该模式下,你可以搜索某个字符或者字符串,也可以保存、替换、退出、显示行号等等。
下面是具体的命令:
一般模式下移动光标
h或向左方向键 : 光标向左移动一个字符
j或向下方向键 :光标向下移动一个字符
k或向上方向键 :光标向上移动一个字符
I或向右方向键 :光标向右移动一个字符
Ctrl+f或者pageUP键:屏幕向前移动一页
Ctrl+b或者pageDown键:屏幕向后移动一页
Ctrl + d : 屏幕向前移动半页
Ctrl + u : 屏幕向后移动半页
+ : 光标移动到非空格符的下一列
- : 光标移动到非空格符的上一列
n空格(n是数字): 按下数字n然后按空格,则光标向右移动n个字符,如果该行字符数小于n,则光标继续从下行开始向右移动,一直到n
0(数字0)或者Shift+6 : 移动到本行行首
Shift+4 : 即’$’移动到本行行尾
H : 光标移动到当前屏幕的最顶行
M : 光标移动到当前屏幕的中央那一行
L : 光标移动到当前屏幕的最底行
G : 光标移动到文本的最末行
nG(n是数字): 移动到该文本的第n行
gg : 移动带该文本的首行
n回车(n是数字) : 光标向下移动n行
一般模式下的查找和替换
/word : 向光标之后寻找一个字符串名为word的字符串,当找到第一个word后,按”n”继续搜后一个
?word : 想光标之前寻找一个字符串名为word的字符串,当找到第一个word后,按”n”继续搜前一个
:n1,n2s/word1/word2/g : 在n1和n2行间查找word1这个字符串并替换为word2,你也可以把”/”换成”#”
:1,
一般模式下删除、复制粘贴
x,X : x为向后删除一个字符,X为向前删除一个字符
nx(n为数字) : 向后删除n个字符
dd : 删除光标所在的那一行
ndd(n为数字) : 删除光标所在的向下n行
d1G : 删除光标所在行到第一行的所有数据
dG : 删除光标所在行到末行的所有数据
yy : 复制光标所在的那行
nyy : 复制从光标所在行起向下n行
p,P : p复制的数据从光标下一行粘贴,P则从光标上一行粘贴
y1G : 复制光标所在行到第一行的所有数据
yG : 复制光标所在行到末行的所有数据
J : 讲光标所在行与下一行的数据结合成同一行
u : 还原过去的操作
进入编辑模式
i : 在当前字符前插入字符
I : 在当前行行首插入字符
a : 在当前字符后插入字符
A : 在当前行行末插入字符
o : 在当前行下插入新的一行
O : 在当前行上插入新的一行
r : 替换光标所在的字符,只替换一次
R : 一直替换光标所在的字符,一直到按下ESC
命令模式
:w : 将编辑过的文本保存
:w! : 若文本属性为只读时,强制保存
:q : 退出vim
:q! : 不管编辑或未编辑都不保存退出
:wq : 保存,退出
:e! : 将文档还原成最原始状态
ZZ : 若文档没有改动,则不储存离开,若文档改动过,则储存后离开,等同于:wq
:w [filename] : 编辑后的文档另存为filename
:r [filename] : 在当前光标所在行的下面读入filename文档的内容
:set nu : 在每行的行首显示行号
:set none : 取消行号
n1,n2 w [filename] : 将n1到n2的内容另存为filename这个文档
:! command : 暂时离开vim运行某个linux命令,例如 :! ls /home 暂时列出/home目录下的文件,然后会提示按回车回到vim
练习:
1. 请把/etc/init.d/iptables 复制到/root/目录下,并重命名为test.txt
用vim打开test.txt并设置行号
分别向下、向右、向左、向右移动5个字符
分别向下、向上翻两页
把光标移动到第49行
让光标移动到行末,再移动到行首
移动到test.txt文件的最后一行
移动到文件的首行
搜索文件中出现的 iptables 并数一下一共出现多少个
把从第一行到第三行出现的iptables 替换成iptable
还原上一步操作
把整个文件中所有的iptables替换成iptable
把光标移动到50行,删除字符”$”
还原上一步操作
删除第50行
还原上一步操作
删除从37行到42行的所有内容
还原上一步操作
复制48行并粘贴到52行下面
还原上一步操作(按两次u)
复制从37行到42行的内容并粘贴到44行上面
还原上一步操作(按两次u)
把37行到42行的内容移动到19行下面
还原上一步操作(按两次u)
光标移动到首行,把/bin/sh 改成 /bin/bash
在第一行下面插入新的一行,并输入”# Hello!”
保存文档并退出
- Linux 中VIM 的使用
- linux中vim的使用
- Linux中VIM的使用
- linux 中 Vi 以及 Vim 的使用
- LInux中VIM的使用和定制
- Linux中 vim 编辑器的使用
- linux中vim编译器的使用
- linux中vim工具的简单使用
- linux-vim的使用
- linux vim 的使用
- linux vim的使用
- 【Linux】vim的使用
- Linux中使用vim乱码
- Linux中使用vim乱码
- linux中vi(vim)编辑器的使用
- Linux---够开发过程中使用的Vim命令
- vi/vim使用进阶: 在VIM中使用GDB 把VIM打造成Linux下程序开发的IDE利器
- linux的VIM的使用
- 端口号、进程号之间关系
- 从 Qt 的 delete 说开来
- centos7 安装 navicat for mysql
- 112.View the Exhibit and examine the structure of the PROMOTIONS table.
- Android程序开发通过HttpURLConnection上传文件到服务器
- linux中vim的使用
- 关系型数据的分布式处理系统MyCAT
- C语言快速排序模板大全(qsort函数)
- iOS将GIF转变为图片
- iOS CAShaperLayer 层详解
- IDLE运行python遇到的两个问题
- 百度地图图片叠加层切片工具:图片在不同级别间定位不一致(横向或纵向漂移)问题的解决
- crontab文件的含义
- linux系统封装为iso