共计 1500 个字符,预计需要花费 4 分钟才能阅读完成。
vim 选项
从头开始
这次咱们从头开始
- 从进入 vim 之前开始
- 咱们能够在终端外面给
vim
怎么样的参数呢? man vim
- 这个如果不行的话
- 要先运行
unminimize
更新 manual
也能够在 vim 中运行命令行
:h starting
咱们能够看到咱们
- 除了把
oeasy.txt
作为文件名参数给vim
之外 - 还能够给
vim
一些选项开关
- 除了把
增加参数进行跳转
- 咱们首先
ls -lah > oeasy.txt
而后
vi +4 oeasy.txt
- 光标会呈现在第
4
行 - 比方某地位有个要害参数
- 能够这样间接跳到那一行
执行之后
- 退出 vim,回到终端
- 光标会呈现在第
运行
vi +/shiyanlou
- 进入后
- 光标在搜寻到的第一个
shiyanlou
执行之后
- 回到终端
- 命令行参数除了能疾速跳转
- 还能干什么呢?
执行命令
运行命令
vi +%s/shiyanlou/oeasy/g oeasy.txt
- 先用
vim
关上文件oeasy.txt
- 再运行命令
:%s/shiyanlou/oeasy/g
- 这用的是 +{command} 的模式
%s/shiyanlou/oeasy/g
就是+
的{command}
- 先用
vi +%s/shiyanlou/oeasy/g +%s/4.0K/o2z/g oeasy.txt
- 先用
vim
关上文件oeasy.txt
- 再运行命令
:%s/shiyanlou/oeasy/g
- 再运行命令
:%s/4.0K/o2z/g
- 这样就能够执行两条命令
- 先用
也能够运行命令
-c
vi -c %s/shiyanlou/oeasy/g oeasy.txt
- 相当于
vi +%s/shiyanlou/oeasy/g oeasy.txt
- 这用的是 -c {command}的模式
- 入手试试
管道传入
vi -
能够承受到stdin
传过来的数据- 咱们能够应用管道
|
ls -lah | vi -
- 咱们能够应用管道
ex-mode
vi -e oeasy.txt
能够用ex
模式关上oeasy.txt
- 也可间接
ex oeasy.txt
- 也可间接
进入 ex-mode 之后,能够执行命令行, 不必再打冒号
:1
:%p
:2,9d
:1,$
:q
退出
能够退回到失常模式
:visual
还能够切换出 ex-mode 子窗口
Q
只读模式
- 能够应用
vi -R oeasy.txt
- 也就是
view oeasy.txt
- 在这种模式下,只能查看不能批改
然而如果你强制写
:w!
- 还是能够写进去的
如果你想要彻底不能写
- 无论是否加叹号都不能写
- 应该怎么办呢?
想要彻底不能写的话
那你须要应用
vi -M oeasy.txt
- 这样你想要做任何写的操作
- 都无奈进行批改
- 起因是 E21
设置可编辑
:set modifiable
- 设置以后文档能够批改
- 而后能够对文件进行批改
- 然而如果想要
:w
还是不行 :h E142
设置可写
:set write
- 把这个开关设置好之后
- 就能够顺利
w
了 - 只有你有 sudo 的权限
- 所有开关你都能够关上
透过各种蓝布棉门帘
- 就能够管制起整个面铺😋
罕用 mode
- ex 能够对应这 vim -e
- view 能够对应着 vim -R
- vimdiff 能够对应着 vim -d
总结
vi
能够加各种选项vi +4 oeasy.txt
vi +/shiyanlou
vi +%s/shiyanlou/oeasy/g oeasy.txt
vi
能够接管stdin
的参数ls -lah | vi -
vi
还有各种模式- 命令行模式
ex oeasy.txt
或者vi -e oeasy.txt
- 只读模式
vi -R oeasy.txt
或者view oeasy.txt
- 命令行模式
- 如果加一个
-r
的参数能够么 - 帮忙手册说什么
swap
是什么意思?🤔 - 下次再说 👋
[Github 地址] (https://github.com/overmind19…)
[Gitee 地址] (https://gitee.com/overmind198…)
[蓝桥实验楼 邀请码 FJWYIMGB] (https://www.lanqiao.cn/course…)
正文完