ex命令

ex命令用于在Ex模式下启动vim文本编辑器,ex执行效果如同vi -e,如要从Ex模式回到普通模式,则在vim中输入:vi:visual指令即可,可以通过运行vi -e来启动ex,也可以通过运行ex -v来启动viexvim的基础,vim是世界上最受欢迎的文本编辑器之一。ex并不是另一个编辑器,应该说vi是更一般更基本的ex行编辑器的可视模式,所以ex算是vi的底层行编辑器。由于一些ex命令可以节省大量的编辑时间,因此在使用vi时它们是非常有用的,这些命令的大部分都可以在不离开vi的情况下使用。

语法

ex [ -| -s ] [ -l ] [ -L ] [ -R ] [ -r [ file ] ] [ -t tag ] [ -v ] [ -V ]
[ -x ] [ -wn ] [ -C ] [ +command | -c command ] file

参数

  • --: 此后仅文件名。
  • -v: 在vi模式下启动vim
  • -e: 在ex模式下启动vim
  • -E: 以改进的ex模式启动vim
  • -s: 沉默模式,仅当以Ex开头或在-s选项之前给出-e选项时生效。
  • -d: 以diff模式启动,应该有两个或三个文件名参数,vim将打开所有文件并显示它们之间的差异,像vimdiff一样工作。
  • -y: 以简单模式启动vim,类似于evimeview,使vim的行为像单击并键入编辑器。
  • -R: 只读模式,将设置readonly选项,此时仍然可以编辑缓冲区,但将防止意外覆盖文件。如果仍要覆盖文件,请在Ex命令中使用w!
  • -Z: 限制模式,类似于rvim
  • -m: 禁止修改文件,重置写入选项,此时仍然可以修改缓冲区,但不可写入文件。
  • -M: 不允许修改,可修改和写入选项将被取消设置,因此不允许进行更改并且无法写入文件。请注意,可以设置这些选项以进行修改。
  • -b: 二进制模式,将设置一些选项,以便可以编辑二进制文件或可执行文件。
  • -l: Lisp模式,将lispshowmatch选项设置为开。
  • -C: 兼容的,设置兼容选项,这将使vim的行为与vi类似,即使存在.vimrc文件。
  • -N: 不兼容模式,重置兼容选项,即使.vimrc文件不存在,这也会使vim表现得更好,但与vi的兼容性较差。
  • -V[N][fname]: 详细信息,提供有关哪些文件来源以及用于读取和写入viminfo文件的消息,可选数字N是详细的值,默认值是10
  • -D: 调试模式,从脚本执行第一个命令时转到调试模式。
  • -n: 不会使用交换文件,这样崩溃后的恢复将是不可能的。如果要在非常慢的介质例如软盘上编辑文件,此功能非常方便。
  • -r: 列出交换文件,以及有关使用它们进行恢复的信息。
  • -r <file name>: 恢复模式,交换文件用于恢复崩溃的编辑会话,交换文件与附加.swp的文本文件具有相同的文件名。
  • -L: 与-r相同。
  • -A: 如果vim是在阿拉伯语支持下编译的,用于编辑从右向左的文件和阿拉伯语键盘映射,则此选项将以阿拉伯语模式启动vim,即设置ARABIC,否则将发出错误消息,vim将中止。
  • -H: 以希伯来语模式启动。
  • -F: 以波斯语模式开始。
  • -T <terminal>: 告诉vim正在使用的终端的名称,仅在自动方式无效时才需要,应该是vim内置已知的终端,或在termcapterminfo文件中定义的终端。
  • --not-a-term: 输入或输出不是终端时跳过警告。
  • -u <vimrc>: 使用文件.vimrc中的命令进行初始化,将跳过所有其他初始化。使用此选项可编辑特殊类型的文件,也可以用来跳过所有的初始化,方法是给名称NONE。 initialization”。
  • --noplugin: 跳过加载插件,由-u表示无。
  • -p[N]: 打开N个标签页,如果省略N,则为每个文件打开一个标签页。
  • -o[N]: 打开堆叠的N个窗口,当省略N时,为每个文件打开一个窗口。
  • -O[N]: 并排打开N个窗口,如果省略N,则为每个文件打开一个窗口。
  • +: 从文件末尾开始。
  • +<lnum>: 对于第一个文件,光标将定位在num行上。如果缺少num,则光标将位于最后一行。
  • --cmd <command>: 在加载任何.vimrc文件之前执行<command>
  • -c <command>: 加载第一个文件后执行<command>
  • -S <session>: 加载第一个文件后源文件的<session>
  • -s <scriptin>: 从文件<scriptin>中读取普通模式命令。
  • -w <scriptout>: 将所有键入的命令附加到文件<scriptout>
  • -W <scriptout>: 将所有键入的命令写入文件<scriptout>
  • -x: 编辑加密文件。
  • --startuptime <file>: 将启动定时消息写入<file>
  • -i <viminfo>: 使用<viminfo>而不是.viminfo
  • -h or --help: 输出帮助信息。
  • --version: 输出版本信息。

示例

file.txt启动ex编辑模式。

ex file.txt

显示总行数、当前行号。

= | .=

打印文件前3行内容。

1,3 p

删除第1到第2行,切换回vi模式查看效果。

1,2 d
vi

移动第12行到第3行下边。

1,2 m 3
vi

复制第12行到第3行下边。

1,2 co 3
vi

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://www.computerhope.com/unix/uex.htm
https://www.runoob.com/linux/linux-comm-ex.html
https://www.cnblogs.com/dasn/articles/5240991.html
https://www.tutorialspoint.com/unix_commands/ex.htm
https://blog.csdn.net/u013408061/article/details/77853130
https://www.geeksforgeeks.org/ex-command-in-linux-with-examples/

ex命令的更多相关文章

  1. Cmder--Windows下命令行利器

    cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为 ...

  2. 【每日一linux命令4】常用参数:

     下面所列的是常见的参数(选项)义: --help,-h                              显示帮助信息 --version,-V                        ...

  3. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  4. MVVM模式解析和在WPF中的实现(三)命令绑定

    MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

  5. SQLServer执行命令出现“目录无效的提示”

    异常处理汇总-数据库系列  http://www.cnblogs.com/dunitian/p/4522990.html 一般都是清理垃圾清理过头了,把不该删的目录删了 网上说法: 问题描述: 1.s ...

  6. SQLServer文件收缩-图形化+命令

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 收缩前 图形化演示: 不仅仅可以收缩日记文件,数据库文件也是可以收缩的,只不过日记收缩比 ...

  7. 让 windows 下的命令行程序 cmd.exe 用起来更顺手

    在 Windows 下使用 Larave 框架做开发,从 Composer 到 artisan 总是避免不了和 cmd.exe 打交道,系统默认的命令行界面却是不怎么好看,且每行显示的字符数是做了限制 ...

  8. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. svn 常用命令总结

    svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...

随机推荐

  1. python环境 anaconda安装

    官网: https://www.anaconda.com/distribution/#macos 国内镜像: https://mirrors.tuna.tsinghua.edu.cn/anaconda ...

  2. mysql-数值函数-取整-保留小数位-求余数

  3. unix domain 与本地本地回环在进程间通信中的差异

    前言: 127.0.0.1它是一个私有IP,代表的就是你的本机环回地址,其实本质上是绑定在虚拟网卡loopback上的IP. 在实际应用中,有遇到在使用本地回环做进程间通讯的时候程序阻塞的情况.比如下 ...

  4. 监控服务器所有磁盘的inode使用情况

    监控服务器所有磁盘的inode使用情况 背景 因为前期数据库开启了审计 但是如果是 DB模式的话 $aud 表的冲突和使用太多了 所以专家建议将审计表放到OS 因为数据库的访问量特别高. 审计的信息又 ...

  5. [转帖]tidb 如何对 TiDB 进行 TPC-C 测试

    https://docs.pingcap.com/zh/tidb/stable/benchmark-tidb-using-tpcc TPC-C 是一个对 OLTP(联机交易处理)系统进行测试的规范,使 ...

  6. [转帖]LVS入门篇(五)之LVS+Keepalived实战

    LVS入门篇(五)之LVS+Keepalived实战 https://www.cnblogs.com/linuxk/p/9365189.html 一.实验架构和环境说明 (1)本次基于VMware W ...

  7. ESXi查看底层存储磁盘厂商型号的方式与方法

    ESXi查看底层存储磁盘厂商型号的方式与方法 背景 公司一台过保的服务器出现了磁盘告警 Vendor不太靠谱. 过保的机器就不管了 不买他们的服务器也不说一下是啥硬盘. 想自己替换,需要先获取磁盘的型 ...

  8. 获取文件的后缀名(转为数组) 字符串和变量的拼接 HTML中字符串和变量的拼接

    1文件上传时,获取文件的后缀名### var cont="2010-23.23.xls" console.log(cont.split("."));//spli ...

  9. elementUI日期选择器,对日期格式进行处理

    使用elementUI日期选择器中,获取不同格式的时间 <el-form-item label="归零时间:" prop="zeroing"> &l ...

  10. c#通过表达式树优雅的实现分组取TopN笔记

    需要引入nuget包来实现ef.functions调用row_number Thinktecture.EntityFrameworkCore.SqlServer 调用方式: //顺排 context. ...