linux基础操作6------(vi/vim编辑器)

一.前言

今天我们来讲一下vi编辑文件,这个如果必须得用linux的话,还是十分重要的,但是如果不会也是有替代方法的,但是我们今天还是需要讲解,以备不时之需。

vi和vim的快捷键是通用的。系统默认是安装了vi的,后面我们会安装一个vim,加强版的vi,功能更 强。

二.移动光标

左,下,上,右,如果键盘上没有上下左右键,可以h,j,k,l

进入编辑模式有三个按钮:i、a、o, i在光标位置编辑、a是在光标后一位编辑、o是换行编辑,新起一行

ctrl+f 下翻一页

ctrl+b 上翻一页

ctrl+u 上翻半页

ctrl+d 下翻半页

0 跳至行首,不管有无缩进,就是跳到第0个字符

^ 跳至行首的第一个字符$ 跳至行尾(shift+4)

gg 跳至文首

G 跳至文尾(shift+g)

5gg/5G 调至第5行,或者命令行模式:5回车,也是跳到第5行,所以其实操作命令都不是唯一的

三.删除复制

x删除单个字符

10x删除10个字符

dd 删除光标所在行(其实dd是剪切的操作), #使用u撤销之前的操作,使用ctrl+r恢复

6dd 从光标开始往下删除6行

dw 删除一个单词(word)

小p 粘贴粘贴板的内容到当前行的下面,比如将dd剪切的行黏贴到下面

大P 粘贴粘贴板的内容到当前行的上面

yy 复制行

5yy复制5行,复制的内容可以通过p\P来黏贴 

四.搜索和替换 

搜索:

        /pattern 向后搜索字符串pattern #辅助小n向下和大N向上,一般都是用/来搜索

        ?pattern 向前搜索字符串pattern #辅助小n向上和大N向下,?搜索用的少

替换:

        :1369s/shell/jaden/g # 将第1369行的shell替换为jaden,/还可以用#或者@符号来代 替:

        :1369s#shell#jaden#g :1369,1379s/shell/jaden/g # 将1369至1379这10行中的shell替换为jaden

        :1369,$s/shell/jaden/g # 将1369至文末中的shell替换为jaden

        :%s/old/new/g #搜索整个文件,将所有的old替换为new

        :%s/old/new/gc #搜索整个文件,将所有的old替换为new,每次都要你确认是否替换(y/n/a/..),y表示确认替换一个、n表示不替换、a表示全部替换 

五.退出编译器 

:w 将缓冲区写入文件,即保存修改到硬盘上,但是不退出vi,如果我们改到一半的时候可以提前保存一下, 以防断电,因为新编辑的数据是在内存中的,而且vi不会自动保存。

:wq 保存修改并退出

:x 保存修改并退出,和wq一样的效果。

:q 退出,如果对缓冲区进行过修改,则会提示

:q! 强制退出,放弃修改

:wq! 强制保存修改并退出 

六.vi注意问题和原理说明 

vi编辑内容原理

 注意,如果内存中的数据没有修改,没什么事儿,如果修改了,并且不小心断开连接了,也就是没有正 常退出vi,比如我们看一下:

我们先创建个文件然后编辑一下,不保存直接强制退出

那么这个隐藏文件会一直在硬盘上,当我们再次vi修改test1.txt的时候,就会看到如下提示信息:

 这是提示你,已经有这个 .test1.txt.swp 文件了。你看到这个提示信息就要考虑一下,是不是自己之 前不小心没保存就掉线了,还是说有其他人正在编辑这个文件。如果是自己之前没有保存,那么可以选 择删除这个隐藏的swp文件,再编辑就没有这个提示了,这是最简单的方式。或者输入 vi -r test1.txt 会看到自己之前保存的内容,重新 wq! 保存一下,然后再删除 .test1.txt.swp 文件即可, 自己之前的修改也就还在。vim编辑的时候会提示如下

如果是有其他人在编辑这个文件,你就输入O,表示只读模式打开,E是直接编辑,R是恢复文件,Q是 退出不编辑了,A是中止操作。其实还有个D指令,直接删除隐藏文件。

七.不会vi怎么办?

可以把文件拷贝到物理机,通过物理机的记事本或者nodepad++等编辑器修改,修改完去替换原文件即 可。 比如xftp就可以帮我们下载文件。但是如果一个比较大的文件,我们只改动一点内容,就可以学学vi,没 必要上传下载文件来操作,耗时。 

这个是独家秘诀,也是这一节的精髓所在

八.总结

主要还是讲解了vi的作用,但是如果对于不常用的人来说,第七是一定是最重要的!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值