vim学习笔记

1.前言

仅作记录。


insert模式,按i即可进入,也就是可以随意输入内容的模式。
normal模式,按esc键进入。
visual模式,按v进入,这个模式可以实现模拟鼠标选中某些字符。

2.文件编辑相关

2.1 已打开一个文件后再打开另一个文件

打开文件1后,在normal模式下打开文件2:

:open 2

2.2 切换已打开的文件

:bp #切换到上一个文件
:bn #切换到下一个文件

2.3 在同一个页面编辑多个文件

打开文件1,同时在当前页面打开文件2:

vim 1
:split 2

在这里插入图片描述

2.4 查看所有被打开文件的文件名

:args

如下图所示,我们打开了三个文件,并且当前正在编辑的是文件1
在这里插入图片描述

2.5 打开远程文件,比如ftp或者share folder

:e ftp://192.168.10.76/abc.txt
:e \\qadrive\test\1.txt

3. 内容编辑相关

3.1 去重/显示行号

:set nu #显示行号
:sort  #排序
:g/^\(.*\)$\n\1$/d #去除重复行
sort u #直接去重复

3.2 索引相关

  1. %可以匹配当前括号的另外一边。
  2. #*代表匹配当前单词并移动光标到下一个匹配值或上一个匹配值。例如我们把光标移动刀第一个123上,然后再normal模式中按#即可移动到下面的123上。
    在这里插入图片描述
  3. /asdf或者?asdf定向索引,区别是前者是正向全局查找,后者是反向全局查找,都是全局查找,只是方向不同,就跟逆时针跟顺时针一样。然后N可以切换上一个匹配的位置,n是下一个匹配的位置。例如下图,我们把光标移动到第十行,使用/666会查找到11行的666紧接着我们按n就会切换到下一个匹配的值,因为11行下面没有匹配的值了,因此会从第一行重新开始匹配,也就是会匹配到第八行的666。?666会反向查找第8行的666按n会将光标移动到下一个匹配值也就是11行的666,再按n又会回到第八行的666:
    在这里插入图片描述
  4. 其他设置细节
    :set ignorecase  忽略大小写的查找
    :set noignorecase  不忽略大小写的查找
    :set hlsearch  高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。
    :set nohlsearch  关闭高亮搜索显示
    :nohlsearch  关闭当前的高亮显示,如果再次搜索或者按下n或N键,则会再次高亮。
    :set incsearch  逐步搜索模式,对当前键入的字符进行搜索而不必等待键入完成。
    :set wrapscan  重新搜索,在搜索到文件头或尾时,返回继续搜索,默认开启。

3.3 输入位置相关

normal模式下先将光标移动到某一行到某个字符上

i #在当前字符前面进行输入
I #在当前行首进行输入
a #在当前字符后面进行输入
A #在当前行尾进行输入
o #在当前行下面重新开辟一行进行输入
O #在当前行上面重新开辟一行进行输入

3.4 替换命令

ra#将当前光标所选中的字符替换为a。
ddp#交换当前行与下一行的内容。
%s/old/new/g#用old替换new,替换整个文件的所有匹配
:10,20 s/^/ /g#在第10行知第20行每行前面加四个空格,用于缩进。

3.5 删除

x#删除选中字符
dd#删除当前行
D#删除当前行的内容但不删除当前行
dG#删除当前行以及当前行之后到所有行

3.6 拷贝和黏贴

按v进入visual模式,然后使用小键盘的上下左右或者hjkl来移动光标选中目标字符,然后使用y命令复制内容,使用p命令,在当前光标右侧黏贴内容。

yy #复制当前行
p #将yy命令复制到字符黏贴到当前行的下面一行

3.7 剪贴

按v进入visual模式,然后使用小键盘的上下左右或者hjkl来移动光标选中目标字符,然后使用d命令剪切内容,使用p命令,在当前光标右侧黏贴内容。

4.移动命令

normal模式下(esc键进入normal)

3h #左移3位
3l #右移3位
3j #下移3位
3k #上移3位

0#零是移动到行头
$#移动到行尾
gg#移动到文件头
shift+g#移动到文件尾
7G#移动到第七行开头
w#移动到下一个单词的开头
ye#从当前位置拷贝到当前单词的最后一个字符

5. 撤销

u#撤销操作
ctrl+r#撤销刚才到撤销操作

6. 保存与退出

ZZ#两个大写Z=:wq!,是保存并退出的意思
:q!#强制退出并忽略所有更改

-------其他-------

  1. 所有:或者\相关的命令都可以按小键盘的上或者下来查看历史记录。
  2. ctrl+p自动补齐。

vim美化

cd ~
cp /etc/vim/vimrc .vimrc

在.vimrc中添加如下配置:

syntax on
set nu!
set autoindent
hi Comment ctermfg=DarkCyan
set encoding=utf-8
set hlsearch
set incsearch
set cursorline
set showmatch
let skip_defaults_vim=1

3.参考文章

简明 VIM 练级攻略
Vim命令合集

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux学习笔记是关于学习Linux操作系统的记录和总结。在学习Linux时,你可能会遇到以下几个方面的内容。 首先,Linux是一个面向网络服务的操作系统,因此你可以随意更换桌面系统。Linux有多种不同的桌面系统供你选择。这意味着你可以根据自己的喜好和需求,选择适合自己的桌面环境。 其次,在Ubuntu中,root用户默认是被锁定的,因此你无法直接使用root权限进行操作。但是,你可以使用sudo命令来提升权限,以执行需要root权限的操作。通过sudo命令,普通用户可以在需要时暂时获得root权限,以便进行需要的操作。 此外,如果你需要修改内核为bash,可以使用vim编辑器打开/etc/passwd文件进行修改。在Linux系统中,vim是一种常用的文本编辑器,类似于Windows的记事本。通过编辑/etc/passwd文件,你可以修改用户的登录shell为bash。 总结起来,Linux学习笔记记录了学习Linux操作系统的过程和经验,包括选择适合自己的桌面环境、使用sudo提升权限以及通过vim编辑器修改/etc/passwd文件等。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux学习笔记](https://blog.csdn.net/m0_65379736/article/details/125700177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shanfenglan7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值