vim介绍
vim中存在三种模式:命令模式、编辑模式、末行模式。
①命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行、复制行、移动光标、粘贴等等)【打开文件默认进入的模式】。
②编辑模式:在该模式下可以对文件的内容进行编辑。
③末行模式:可以在末行输入命令对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等);
重点:复制出一个/etc/passwd文件,复制到当前家目录。避免修改系统中的passwd文件。退出方式 shift+: ,输入 q 。
-
vim的三种打开文件的方式
①vim 文件路径,打开指定文件。vim passwd。②vim +数字 文件路径,打开指定的文件并且将光标移动到指定行(不指定默认第一行,或者上次打开文件光标显示的位置)。
③vim +/关键词 文件的路径,打开指定的文件并且高亮显示关键词,相当于查找功能。
④vim 文件1 文件2 文件3,同时打开多个文件。
-
命令模式,打开文件即可进入。
①shift + 6或者 ^ 或者数字0 ,移动光标到行首。对于正则表达式中的^表示起头。
②shitf + 4或者 $ ,移动光标到行尾。对于正则表达式中的$表示结尾。
③ gg(good game) ,移动光标到首行。
④ 数字 G ,移动光标指定行(默认不写数字是尾行)。数字 + 方向键,表示向指定位置移动指定位数的字符。
⑤page up(向上)或者ctrl + b(back),page down(向下)或者 ctrl + f(forward) 翻页。
⑥ yy, 复制光标所在行。p键 粘贴已复制到剪切板的内容。
⑦ 数字 yy, 向下复制指定行数(包含当前行)。例如:3 yy。
⑧ ctrl + v ,然后按下方向键选中需要复制的区块,然后按下 yy 复制,p键粘贴。可视化复制。⑨数字 dd ,剪切/删除指定行(默认是光标所在行,包含当前行)。注意:严格意义上是剪切命令,但是如果不粘贴则是删除命令,删除完后上移。D键 ,删除光标所在行,但是删除完后不上移。
⑩ shitf + : 输入 u(undo) 。撤销效果。ctrl + r 。取消之前的撤销操作
-
模式之间的切换(重点)
-
末行模式
进入方式由命令模式进入,按下“ : ”进入。
退出方式a:按下ESC,b:按两下ESC;c:退格键。①“ :w ”,(write)保存文件。
②“ :w 路径 ”,另存为。
③“ :q ”,退出。“ :wq ”,保存并退出。④“ :q! ”,表示强制退出,修改的内容不被保存。
⑤“ !外部命令 ”,临时隐藏本身的内容,调用外部命令。例如:“ !ls ”。
⑥ “ : / 关键词 ”,搜索/查找(从头开始);“ : ?关键词 ”,搜索/查找(从底部开始查找)。“ :no hl ”,(no heighlight)去除高亮。
⑦“ : s/关键词/新的内容”,(strreplace)替换光标指定行的第一个字符串。“ : s/关键词/新内容/g ”,替换光标所在行的全部符合的内容。“ :%s/关键词/新内容 ”,替换整个文档中每行第一个符合条件的内容。“ :%s/关键词/新内容/g ”,替换整个文档中符合条件的内容(%表示整个文档,g表示全局【global】)。
⑧ “ :set nu ”显示行号。“ :set nonu ”,取消行号。
⑨切换文件。首先需要打开多个文件: vim 文件路径1 文件路径2 文件路径3 ;然后可以在末行模式中查看已经打开的文件名称:“ :files ”。“%a”表示active,当前正在打开的文件;“ # ”表示上一个打开的文件。
切换文件的方式:
A:如果需要指定切换文件的名称,则可以输出“ :open 已经打开的文件名 ”,例如:“ :open together2 ”。
B:通过其他命令来切换上一个或者下一个文件,则可以输入“ :bn ” (back next)表示切换到下一个文件,输入“ :bp ” (back previous)表示切换到上一个文件。⑩多窗口功能
如果需要一个或多个文件对照修改内容时,可以使用多窗口功能。
在vim中可以使用 “ :sp [文件名]” 命令,如果没有加文件名则默认为打开同一个文件,否则则打开两个文件。使用效果如下:常用功能:
a、ctrl + w + ↑/↓ ,表示移动光标到上下两个窗口;
b、ctrl + w + q,退出窗口。也可以使用 “ :close ”来关闭当前窗口。 -
编辑模式
重点前两个: i 【insert】(在光标所在字符前开始插入)、a【after】(在光标所在字符后开始插入)、S(删除光标所在行并开始插入) 。 -
使用功能
A:代码着色。①开启代码颜色“ :syntax on ”;②开启代码颜色“ :syntax off ”。
B:vim中使用计算器。①进入编辑模式;②按下ctrl + r 然后输入“ = ”,此时光标会跳到最后一行;③输入需要计算的内容。 -
扩展
①vim的配置,vim的配置文件有三种情况:
a. 在文件打开的时候在末行模式下输入的配置(临时的);
b. 个人配置文件(~/.vimrc,如果没有可以自行新建【代码为set nu】);(优先级:个人配置 > 全局配置)c. 全局配置文件(vim自带,/etc/vimrc)。
②异常退出
编辑文件之后并没有保存退出,遇到断电等情况,就会显示上面的情况。
解决方法:删除交换文件(在编辑过程中产生的临时文件)。
③别名机制,相当于创建一些属于自己的自定义命令。依靠一个别名映射文件:~/.bashrc
注意:如果想使用新的创建命令,必须重新登录当前的用户。④退出方式
在vim中可以使用 “ :q ” 或者 “ :wq ” 退出,vim还支持“ :x ”这种退出方式。说明:a. “ :x ”在文件未被修改表示直接退出,修改的情况下表示保存并退出;b. 如果文件没有被修改但是使用了“ :wq ”来退出则文件的 修改时间会被更新。
但是,千万不要输入X,千万不要输入X,千万不要输入X,千万不要输入X,X表示加密操作。