Linux最全的vim编辑器使用,一篇就够了

vim的使用

vim主要模式介绍, vim命令模式

查看vim, 在命令行输入 vim回车出现提示

查看命令位置及版本

[root@laser ~]# which vim
/usr/bin/vim

[root@laser ~]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.629-6.el7.x86_64

也可使用
vim
[root@laser ~]# rpm -qf `which vim`
vim-enhanced-7.4.629-6.el7.x86_64

vi
[root@laser ~]# rpm -qf `which vi`
vim-minimal-7.4.629-6.el7.x86_64

vim是vi的加强版

问: vi和vim是同一个软件安装包吗?

不, vim是vi的增强版, 最明显的区别是vim可以语法加亮, 它完全兼容vi

例:

[root@laser ~]# vim /etc/passwd

vi编辑则没有颜色区别

vim编辑模式

首次进入文件 ---- 命令模式

出现 Insert ----- 编辑模式

输入 : ---- 命令行模式

注意: 不同模式之间需要按 esc

进入编辑模式:

a i o A I O

解释:

i :  当前字符之前插入(光标前)

I :  行首插入 (行首)

a  :  当前字符之后插入(光标后)

A  :  行尾插入(行尾)

o  :  下一行插入 (另起一行)

O :   上一行插入  ( 上一行)

x  :   向后删除一个字符   等同于delete

X  :  向前删除一个字符

u  :  撤销

r :  替换

在命令行下光标快速定位

光标定位

hjkl 左下上右 (老司机都这么用) 辨别新手和老司机最佳方式

0 和 home键表示切换到行首, $和end表示切换到行尾

gg 定位到文首,  G定位到文末

/string(字符串) 找到或定位你要查找的单词或内容, 如果相符内容比较多 , 我们可以使用 n下一个查找 N表示向上查找, 查找到的内容会进行高亮显示

如:

取消高亮显示: :noh

如何对文本进行编辑

删除:   dd    删除一行

删除N行: ndd 比如: ndd表示删除两行

复制: y复制(以字符为单位)  表示对单个字符进行复制, 如果要复制一整行, 用yy 复制

粘贴: p P

x: 删除光标所在位置的字符

D 从光标处形成到行末

Ctrl + r  还原撤销过的操作, 将做过的撤销操作再还原回去, 也就是撤销之前进行恢复

如何进入其他模式

:  进入命令行模式

v  进入可视模式  行为单位

Ctrl+ v进入可是块模式,

V 进入可视行模式   行为单位

进入模式后退出 `esc`

Ctrl + v 进入块模式如图,

批量注释方法

  1. Ctrl + v 进入列表编辑模式

  2. 向上或向下移动光标

  3. 然后按大写 I

  4. 在光标位置输入 #

  5. 最后 按 esc 即可

    替换也一样

命令行模式

w   保存 save

w!  强制保存

q   退出

q!  强制不保存退出

wq  保存退出

wq! 强制保存退出

x   保存退出

重新打开后出现这种情况, 如何处理

先强制杀死进程, 在删除.passwd.swp文件, 对源文件不会影响

如果还想使用, 根据提示操作即可

查看进程
[root@laser ~]# ps aux|grep vim
root 2485 0.0  0.5 149748  5752 pts/1 S+ 20:58 0:00 vim /etc/passwd
杀
[root@laser ~]# kill -s 9 2485(进程号)
删除文件
[root@laser ~]# rm /etc/.passwd.swp

再进入就没有提示了

调用外部文件或命令

在打开编辑模式后, 执行 !命令 即可, enter回到编辑模式, 也可以读取文件

:!+命令

:r /etc/hosts 读取文件

文本替换

格式: 范围(其中%所有内容) s 分隔符 旧的内容 分隔符 新内容 (分隔符可以自定义)

默认是每一行的第一个符合要求的词 (全部替换 /g)

例: 替换第 1 到 3 行中出现的第一个 bin 替换为 chen

指定某一行替换 :2 s/bin/chen

:1,3 s/bin/chen

会把查找到的全部高亮显示, 全部替换最后加/g

:1,3 s/bin/chen/g 即可

% : 字符替换, 全文编辑, 后加 i 为不区分大小写

:% s/bin/chen/gi

注意: / 也可以用 @ 代替

编辑环境

显示行号 :set nu

取消行号 :set nonu

取消高亮 :noh

拓展: 查看自己 使用vim 做了哪些操作

[root@laser ~]# vim .viminfo

永久设置行号, 需要到配置文件中配置

[root@laser ~]# vim .vimrc

输入内容    set nu
保存退出, 以后打开任何文件都会显示行号

vim同时打开多个文件

方式1

方法1 以上下形式打开两个文档
[root@laser ~]# vim -o /etc/passwd /etc/hosts

退出 :qa

方式2

左右形式打开两个文件,   退出qa
[root@laser ~]# vim -O /etc/passwd /etc/hosts

两个文件之间切换编辑方式
Ctrl+ww  两文件之间切换

注: 大写 O 左右分屏 小写o上下分屏

对比两文件, diffvimdiff

diff
[root@laser ~]# cp /etc/passwd a.txt
[root@laser ~]# echo aaa >> a.txt 
[root@laser ~]# diff /etc/passwd a.txt 
47a48
> aaa  输出差异字符

vimdiff 打开编辑模式显示差异

[root@laser ~]# vimdiff /etc/passwd a.txt 

其他编辑器

nano 编辑器

emacs 编辑器

GEDIT 编辑器 图形化界面使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值