发布时间:2014-09-05 16:35:22作者:知识屋
笔者阅读了了《鸟哥的Linux私房菜》的“vim程序编辑器”一章,对vi的常用操作命令做如下记录,以便查阅。
一.Vi的三中模式
基本上 vi 共分为三种模式,分别是『一般模式』、『编辑模式』不『指令列命令模式』。这三种模式 作用分别是:
1、一般模式: 以 vi 打开一个档案就直接 入一般模式了(这是默认的模式)。在这个模式中,你可以使用『上下左右』按键来移的光标,你可以使用『删除字符』戒『删除整行』来处理档案内容,也可以使用『复制、贴上』来处理你 文件数据。
2、编辑模式: 在一般模式中可以 行删除、复制、贴上等等 劢作,但是却无法编辑文件内容的! 要等到你按下『i, I,o, O, a, A, r, R』等任何一个字母后才会进入编辑模式。注意了!通常在 Linux 中,按下这些按键时,在画面 左下方会出现『 INSERT 或 REPLACE 』的字样,此时才可以 行编辑。而如果要回到一般模式时,则必须要按下『Esc』这个按键即可退出编辑模式。
3、指令列命令模式: 在一般模式当中,输入『 : / ? 』三个中 任何一个按钮,就可以将光标移动到最底下那一行。在这个模式当中,可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号等等的动作则是在此模式中达成的!
简单的说,我们可以将这三个模式想成底下的图标来表示:
二、vi的常用操作命令
1、移动光标的方法
h或向左箭头键(←)-------光标向左移动一个字符
j或向下箭头键(↓)--------光标向下移动一个字符
k或向上箭头键(↑)-------光标向上移动一个字符
l或向右箭头键(→)--------光标向右移动一个字符
Ctrl+f---------向文件尾翻一屏,相当于【Page Down】按键
Ctrl+b--------向文件首翻一屏,相当于【Page Up】按键
G--------------移动到这个档案的最后一行
gg-------------移动到这个档案的第一行
nG------------n为数字,表示移动到这个档案的第n行
n<Enter>----光标向下移动n行
2、搜寻与取代
/word--------向光标之下搜寻一个名称为word的字符串
?word-------向光标之上搜寻一个名称为word的字符串
n------------这个 n 是英文按键。代表『重复前一个搜寻的动作』。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
:n1,n2s/word1/word2/g------n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则:『:100,200s/vbird/VBIRD/g』
:1,$s/word1/word2/g ------从第一行到最后一行寻找 word1 字符串,并将该字符串取代为word2 !
:1,$s/word1/word2/gc -----从第一行到最后一行寻找 word1 字符串,并将该字符串取代为word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!
3、删除、复制与粘贴 www.zhishiwu.com
x, X ------在一行字当中,x 为向后删除一个字符 (相当亍 [del] 按键), X 为向前删除一个字符(相当亍 [backspace] 亦即是退格键)
dd------ 删除游标所在的那一整列
ndd----- n 为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列
yy -----复制游标所在的那一行
nyy----- n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列
p, P----- p 为将已复制 数据在光标下一行贴上,P 则为贴在游标上一行!举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后,那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢?那么原本的第 20 行会被推到变成 30 行。
u------ 复原前一个动作。
[Ctrl]+r -----重做上一个动作。
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能