oeasy教您玩转vim - 60- # vim选项
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地址] (GitHub - overmind1980/oeasyvim: 这是oeasy制作的的一套关于vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做实验 邀请码FJWYIMGB 本教程从0基础开始,到精通vim配置,和高级命令。希望能让vim是你的开发更高效。)
[Gitee地址] (overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 vim_Linux - 蓝桥云课)
oeasy教您玩转vim - 60- # vim选项的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010108到底哪个which
到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?
- oeasy教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
- oeasy教您玩转linux-010110内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- 什么是Java线程池
摘自:某个百度知道 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力. 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在 ...
- sentinel-dashboard.jar 安装
本文涉及的基本概念: 几种服务限流方式:熔断:拒绝流量访问,当系统恢复正常时在关闭熔断服务降级:将次要服务降级,停止服务,将系统资源释放出来给核心功能延迟处理:在前端设置一个流程缓冲池,将所有的流程全 ...
- Django - 在后台上传文章封面图 - 并在前端页面展示
需要用到 models.ImageField(), 它继承自 models.FileField(), 用ImageField的时候需要安装pillow pip install pillow -i h ...
- Prism 基础知识学习(五)发布订阅
Prism 基础知识学习(五)发布订阅 在 ViewBViewModel.cs中 1 public class ViewBViewModel : IDialogAware 2 { 3 /// < ...
- NOIP模拟58
T1 Lesson5 ! 解题思路 首先对于整张图求出拓扑序,然后顺着拓扑序其实也就是顺着边的方向,更新最长路,也就是从 1 节点到达这个节点的最长路. 然后再逆着拓扑序,反向求一下最长路,也就是从这 ...
- 7.22考试总结(NOIP模拟23)[联·赛·题]
不拼尽全力去试一下,又怎么会知道啊 前言 又是被细节问题搞掉的一天. T1 的话,与正解相差无几,少打了两个 else 一个 ls 打成了 rs,然后就爆零了(本来还有 45pts 的),然后加了一个 ...
- 网页CSS源码
EntryTag { margin-top:20px; font-size:9pt; color:gray } .topicListFooter { text-align:right; margin- ...
- js 生成pdf
最简洁的代码 <script src="js/html2canvas.min.js" type="text/javascript" charset=&qu ...
- java小记-scanner
不想打字也是我的罪过吗? 作业2: 老师的代码: 结果 我的代码看起来冗余: 想说的: 我的本意是以为scanner只能记录一个数,然后就想着输入两次就能算两个数了,但没想到人家只是让你输就完了.不要 ...
- 网络诊断工具traceroute的使用
在 Linux 系统中,traceroute 是一个网络诊断工具,用于确定数据包从你的计算机到目标主机(如一个网站或远程服务器)所经过的路由路径. 如果你的系统中没有安装 traceroute,你可以 ...