Linux文本工具之-Vim(二)

一、编辑

快捷键 功能描述
i 在当前光标所在位置插入,光标后的文本相应向右移动
I 光标所在行的行首插入,行首是该行的第一个非空白字符,相当于光标移动到行首执行 i 命令
o 光标所在行的下插入新的一行。光标停在空行首,等待输入文本
O(大写) 光标所在行的上插入新的一行。光标停在空行的行首,等待输入文本
a 在当前光标所在位置之后插入
A 光标所在行的行尾插入,相当于光标移动到行尾再执行 a 命令
esc键 退出编辑模式
快捷键 功能描述
↑或ctr + p 上一条命令
↓或ctr + n 下一条命令
ctr + b 移动到命令行开头
ctr + e 移动到命令行结尾
ctr + ← 向左一个单词
ctr + → 向右一个单词

二、删除

字符的删除:

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

X:删除光标前面的字符(相当于 Backspace 键)。

单词的删除:

dw:删除从光标所在位置到下一个单词开头的所有字符。

d$:删除从光标所在位置到行末的所有字符。

daw:删除包括光标所在的单词的所有字符(包括前后空格)。

diw:删除光标所在单词内的所有字符(不包括前后空格)。

d2w:删除当前单词和下一个单词。

d0:删除从行首到光标位置的所有字符。

d1:删除从行首到光标位置的第一个字符,等同于x。

dh:删除光标前一个字符,等同于X。

行的删除:

dd:删除当前行,并将其保存到寄存器中以备粘贴。

5dd:删除当前行及其下面的 4 行。

D:删除从光标位置到行末的所有字符。

:n1,n2d:删除从行号 n1 到 n2 的所有行。

dgg:删除从当前行到文件开头的所有行。

dG:删除从当前行到文件末尾的所有行。

行的合并:

J:将当前行和下一行合并为一行

三、查找

查找

/pattern:在 Vim 中,可以使用 / 后跟要查找的模式进行搜索。例如,输入 /keyword 可以在文本中查找关键字 "keyword"。

?pattern:与上述类似,不同之处在于在问号后查找模式,例如 ?keyword。

n:在查找模式下,按下 n 键可以跳转到下一个匹配项。

N:在查找模式下,按下大写的 N 键可以跳转到上一个匹配项。

替换

:s/pattern/replacement/:这是 Vim 中进行替换的基本格式。其中 pattern 是要查找的模式,replacement 是要替换成的内容。例如,:s/old/new/ 会将当前行中的第一个 "old" 替换为 "new"。

:s/pattern/replacement/g:在后面添加 g 标志,会替换所有匹配项,而不仅仅是每行的第一个匹配项。

:%s/pattern/replacement/g:在 % 前加上 : 号,可以对整个文档执行全局替换,而不只是当前行。

四、替换

cw:用于修改当前光标所在的单词。

cb:将光标移动到当前单词的开始处。

cc:用于删除整行并进入插入模式,可以输入替换的文本。

~:用于更改当前所在位置的字符的大小写(大写转小写、小写转大写)。

r:用于替换单个字符,将当前光标所在的字符替换为一个新的字符。

R:用于进入替换模式,将会替换光标后的的所有字符。

xp:用于交换当前光标所在位置的字符和其下一个字符的位置。

五、撤销修改、重做与保存

在文本编辑过程中,撤销修改和重做操作是非常重要的。此外,保存文本是确保你的更改被永久保存的一种方式。下面是一些常见的命令和操作:

撤销修改

u:按下 u 键可以撤销最近的修改。每按一次 u 键,就会撤销上一次的修改。

Ctrl + r:按下 Ctrl + r 键可以重做被撤销的修改。每按一次 Ctrl + r 键,就会重做上一次被撤销的修改。

保存文本

:w:这是 Vim 中保存文本的基本命令。在命令模式下,输入 :w 可以将当前文本保存到文件中。如果没有指定文件名,则会保存到原始文件中。

:w filename:如果你想将文件保存为特定的文件名,可以在 :w 命令后面加上文件名。例如,:w newfile.txt 将会将文件保存为名为 "newfile.txt" 的文件。

:saveas filename:这个命令会将当前文本保存到指定的文件名,类似于另存为。输入命令 :saveas newfile.txt 将会在当前目录下创建一个名为 "newfile.txt" 的副本,并将文本保存到该文件中。

U:按下大写的 U 键可以撤销对整行的所有修改,将行恢复到上一次保存时的状态。

q:在命令模式下,输入 q 可以退出 Vim。如果有未保存的修改,Vim 会发出警告并阻止退出。你可以按下 q! 来强制退出 Vim,丢弃未保存的修改。

wq:这是组合命令,可以将文本保存并退出 Vim。在命令模式下,输入 :wq 将会将文本保存到文件中,并退出 Vim 编辑器。

wq!:类似于上述的 wq 命令,但加上了 ! 表示强制保存。即使文件是只读模式或者没有写权限,也会强制保存并退出。

e!:该命令用于放弃当前的修改并重新加载文件。在命令模式下,输入 :e! 将会放弃所有未保存的修改,并重新加载原始文件。

六、行号

:set nu 普通模式下执行,同 :set number

取消行号 :set nonumber

七、其他

打开多个文件:

vim file1.txt file2.txt:在启动 Vim 时,可以通过在命令行上指定多个文件名来打开多个文件。例如,这个命令会同时将 "file1.txt" 和 "file2.txt" 文件加载到 Vim 中。

在已打开的文件之间切换:

:n:在普通模式下,输入 :n 可以跳到下一个打开的文件。

:N:在普通模式下,输入 :N 可以跳到上一个打开的文件。

在已打开的文件之间切换并保存:

:n 或者 :wn:在普通模式下,输入 :n 或者 :wn 可以切换到下一个文件并保存当前文件。

:N 或者 :wN:在普通模式下,输入 :N 或者 :wN 可以切换到上一个文件并保存当前文件。

查看已打开的文件列表:

:ls:在命令模式下,输入 :ls 可以列出当前已打开的文件列表。

在已打开的文件之间切换编辑区域:

Ctrl + ww:在正常模式下,按下 Ctrl + ww 可以在不同的分割窗口中切换编辑区域

相关推荐
龙鸣丿40 分钟前
Linux基础学习笔记
linux·笔记·学习
耶啵奶膘2 小时前
uniapp-是否删除
linux·前端·uni-app
_.Switch3 小时前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
2401_850410833 小时前
文件系统和日志管理
linux·运维·服务器
JokerSZ.3 小时前
【基于LSM的ELF文件安全模块设计】参考
运维·网络·安全
XMYX-04 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
芯盾时代4 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
心灵彼岸-诗和远方5 小时前
DevOps业务价值流:架构设计最佳实践
运维·产品经理·devops
一只哒布刘5 小时前
NFS服务器
运维·服务器
苹果醋36 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx