回忆上节课内容🤔
光标的运动
- 命令行是什么?
- 在命令行上如何控制光标运动呢?
- 比如已经打出了
:oeasy o2z o3z
- 左右方向键 ⬅️、➡️️</kbd
-
ctrl+⬅️、ctrl+➡️️按单词左右运动
-
shift+⬅️、shift+➡️️按单词左右运动
-
ctrl+b 回到命令行开头begin
-
ctrl+e️ 回到命令行结尾end
-
ctrl+w 删除光标之前的单词word
- 编辑好命令之后
命令行的操作
-
d
是 normal
模式下的删除命令
-
:d
是 命令行
模式下的删除命令
- 关于命令行命令
- 我们可以使用
:h :d
- 来观察一下d命令是如何按行进行
删除
的
- 我们来试试
-
:d
可以删除当前行
- 帮助中这个
[range]
是干什么用的呢?🤔
[range]
范围
- 最常见的就是
范围
- 比如
1,4
就是从第 1-4
行
- 然后再后面加上
d
操作
-
:1,4d
就是 1 - 4
行都删除
- 可以把行号列出来
:se nu
-
range
可以复制 yank
吗?
- 查一下帮助啊
[range]yank
范围复制
-
2,5y
从 2-5
行都 yank
下来
-
yank
到了什么?
- 如果想用制定寄存器
"a
呢?
- 那就
:2,5y a
- 粘贴的时候
- 就需要指定寄存器
"ap
- 这样我们就可以快速的完成行的复制和删除
- 其实还有效率更好的方法!!!
直接复制
-
:h :copy
可以看到相关的帮助,如上图
- 更快速的写法是
:t
-
:5,8t20
可以把5-8行拷贝到第20行下面
- 试一下
- 这很爽
- 如果我要移动到20行
- 但是文本中只有10行会如何
范围
- 移动的目标要注意范围
- 同时文本中必须要存在20行的范围
直接剪切
总结
- 这次我们主要就是看看行编辑命令
- 可以选择一个
[range]
范围
- 然后进行相应的操作
- 还可以指定寄存器
- 甚至可以用一行就复制或者剪切内容
-
:12,30t50
,12-30行复制到50行
-
:3,6m30
,3-6行移动到30行
- 这个
[range]
还有什么说法吗?🤔
- 下次再说 👋
教程来源于Github,感谢overmind1980大佬的无私奉献,致敬!
赵成的运维体系管理课 -〔赵成〕
深入拆解Java虚拟机 -〔郑雨迪〕
正则表达式入门课 -〔涂伟忠〕
如何讲好一堂课 -〔薛雨〕
HarmonyOS快速入门与实战 -〔QCon+案例研习社〕
徐昊 · TDD项目实战70讲 -〔徐昊〕
人人都用得上的数字化思维课 -〔付晓岩〕
中间件核心技术与实战 -〔丁威〕
B端体验设计入门课 -〔林远宏(汤圆)〕