经常需要用到列编辑这种操作,现在很多超文本的编辑器都可以轻松实现。

但有时需要在vi界面直接使用,但是vi的列编辑操作因不常使用总是忘记现查。

这次干脆记录下加深印象。

vi编辑某个文本时,比如修改一个oracle的参数文件,历史实验时取的实例名字是jyzhao, 如今实验我已经成功改成prod了,如下:

*.audit_file_dest='/opt/app/oracle/admin/prod/adump'
*.audit_trail='db'
*.cluster_database=true
*.compatible='11.2.0.4.0'
*.control_files='+DATA/prod/controlfile/current.265.1083233741'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_name_convert='+data/prod','+data/mynas'
*.db_name='prod'
*.db_unique_name='mynas'
*.diagnostic_dest='/opt/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=prodXDB)'
*.enable_goldengate_replication=TRUE
*.fal_server='prod'
prod1.instance_number=1
prod2.instance_number=2
*.log_archive_config='DG_CONFIG=(prod,mynas)'
*.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=mynas'
*.log_archive_dest_2='SERVICE=prod VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=prod'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'
*.log_file_name_convert='+data/prod','+data/mynas','+fra/prod','+fra/mynas'
*.open_cursors=300
*.pga_aggregate_target=1290797056
*.processes=150
*.remote_listener='jyrac-scan:1521'
*.remote_login_passwordfile='exclusive'
*.sga_target=2008023040
*.standby_file_management='AUTO'
prod2.thread=2
prod1.thread=1
prod1.undo_tablespace='UNDOTBS1'
prod2.undo_tablespace='UNDOTBS2'

上面是改完的,如果名字不匹配启动nomount阶段就会报错,这里不展开。

直接演示下vi如何列编辑改回去的全过程吧,首先vi这个文件进入,使用:set nu显示行号方便之后操作:

  1 *.audit_file_dest='/opt/app/oracle/admin/prod/adump'
2 *.audit_trail='db'
3 *.cluster_database=true
4 *.compatible='11.2.0.4.0'
5 *.control_files='+DATA/prod/controlfile/current.265.1083233741'
6 *.db_block_size=8192
7 *.db_create_file_dest='+DATA'
8 *.db_domain=''
9 *.db_file_name_convert='+data/prod','+data/mynas'
10 *.db_name='prod'
11 *.db_unique_name='mynas'
12 *.diagnostic_dest='/opt/app/oracle'
13 *.dispatchers='(PROTOCOL=TCP) (SERVICE=prodXDB)'
14 *.enable_goldengate_replication=TRUE
15 *.fal_server='prod'
16 prod1.instance_number=1
17 prod2.instance_number=2
18 *.log_archive_config='DG_CONFIG=(prod,mynas)'
19 *.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=mynas'
20 *.log_archive_dest_2='SERVICE=prod VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=prod'
21 *.log_archive_dest_state_1='ENABLE'
22 *.log_archive_dest_state_2='ENABLE'
23 *.log_file_name_convert='+data/prod','+data/mynas','+fra/prod','+fra/mynas'
24 *.open_cursors=300
25 *.pga_aggregate_target=1290797056
26 *.processes=150
27 *.remote_listener='jyrac-scan:1521'
28 *.remote_login_passwordfile='exclusive'
29 *.sga_target=2008023040
30 *.standby_file_management='AUTO'
31 prod2.thread=2
32 prod1.thread=1
33 prod1.undo_tablespace='UNDOTBS1'
34 prod2.undo_tablespace='UNDOTBS2'

比如这里先改16、17两行,直接:16到16行,然后ctrl + v进入列编辑(-- VISUAL BLOCK --)模式,向下箭头移动光标,选择需要修改的这两列,待光标在我们要修改的列上闪烁时,使用shift + i批量插入,这里需要特别注意的是,插入时好像只改1行?不要担心,只要前面操作ok,改完后直接ESC键,修改就会同步到我们选择的所有行:

 16 jyzhao1.instance_number=1
17 jyzhao2.instance_number=2

同样操作,对31~34行进行修改:

 31 jyzhao2.thread=2
32 jyzhao1.thread=1
33 jyzhao1.undo_tablespace='UNDOTBS1'
34 jyzhao2.undo_tablespace='UNDOTBS2'

是不是很简单?

好了,现在可以自己练习再改回去吧_

小知识:vi如何使用列编辑模式快速插入的更多相关文章

  1. 如何使用VIM的列编辑模式 [转]

    如何使用VIM的列编辑模式? * windows 我使用的VIM FOR WINDOWS,一直都听说VIM有列编辑模式,一直没有使用过,试了几次都失败了.今天又因为工作需要,到网上查了一下,经过不断的 ...

  2. Emacs 之列编辑模式

    // */ // ]]> Emacs 之 列编辑模式 Table of Contents 1. Emacs 下列编辑模式常用命令 2. 可以参考 1 Emacs 下列编辑模式常用命令 先mark ...

  3. Emacs和Ultra Edit列编辑模式

    在emacs中可以使用C-r系列组合键进行区域选择编辑,或者使用emacs自带的cua-mode,然后键入C-ret进行可视化列编辑. 使用Ultra Edit同样可以方便的进入列编辑模式,只需要按下 ...

  4. Sublime 3 如何使用列编辑模式

    前言 作为一名运维人员,文本IDE的列编辑模式对工作效率的提升很大.以前总用UE,觉得UE的列编辑模式设置很人性化(alt+c).后来接触了sublime,个人觉得它的列编辑模式使用对比UE略有差距. ...

  5. vim 列编辑模式

    vim 列编辑模式 标签: vim 视窗模式 列编辑模式 vim 列编辑模式 例子:给列批量添加前缀.后缀.修改字段 vim 列编辑模式 vim 有三种编辑模式,命令模式.输入模式.视窗模式,我们常用 ...

  6. 在C#中,Windows Console控制台 设置控制台标题、禁用关闭按钮、关闭快速编辑模式、插入模式

    设置控制台标题 禁用关闭按钮 关闭快速编辑模式 关闭插入模式 设置控制台标题.禁用关闭按钮 #region 设置控制台标题 禁用关闭按钮 [DllImport("user32.dll&quo ...

  7. idea列编辑模式

    当我们想要选中一列时,在eclipse中alt+shit+a就可以选中一列了, 在网上很多的idea中列编辑的使用,但是对我的电脑却不管用,也不太清楚在哪里设置 最后无奈乱试一通,结果找到了 alt+ ...

  8. vim列编辑模式快捷键

    vi/vim编辑器 多行行首插入   1 在多行行首插入,在nomal模式下按下ctrl+v,然后进行选择(如果想要选择至文件结尾,则再按G) 2 选择好以后按大写的I,则光标会自动跳转到所选择行的第 ...

  9. Notepad++列编辑模式

    先按住alt,选中列,再上下左右拖动编辑即可:再次点击左键即可取消.

  10. 【第十五篇】easyui datagrid的列编辑,同时插入两张表的数据进去

    看图说话. 需求:插入两张表,上面的表单是第一张表的内容,下面的两个表格是第二张详情表的内容,跟第一张表的id关联 第二张表有一个列是需要用户手动填写添加的. 国际惯例,上代码 <div id= ...

随机推荐

  1. Java拓展-拆,装箱,线程,反射

    导言: 在学习JavaSE的时候,我们会使用Java基础编程,并且了解了什么是面向对象的编程,会使用Java写一些基础算法程序, 接下来,我们需要了解Java的自动拆箱和自动装箱,单线程和多线程,反射 ...

  2. 【python基础】复杂数据类型-字典(遍历)

    一个字典可能只包含几个键值对,也可能包含数百万个键值对,所以Python支持字典遍历.字典可用于以各种方式存储信息,因此有多种遍历字典的方式:可遍历字典的所有键值对.键或值. 1.遍历所有的键值对 其 ...

  3. 【python基础】函数-模块

    函数的优点之一是,使用它们可将代码块与主程序分离.通过给函数指定函数名称,可让主程序容易理解的多.我们还可以更加细化,将函数存储在被称为模块的独立文件中,再将模块导入到主程序中.import关键字作用 ...

  4. 组合数学知识整理_USTC-IAT期末复习版(已完结)

    组合数学知识整理_USTC-IAT期末复习版(已完结) 第一章 排列与组合 第二章 递推关系与母函数 第三章 容斥原理与鸽巢原理 第四章 polya定理

  5. 【笔试实战】LeetCode题单刷题-编程基础 0 到 1【一】

    1768. 交替合并字符串 题目链接 1768. 交替合并字符串 题目描述 给你两个字符串 word1 和 word2 .请你从 word1 开始,通过交替添加字母来合并字符串.如果一个字符串比另一个 ...

  6. 续《基于C# 开发的SOL SERVER 操作数据库类(SQLHelp》 ——第二弹

    续上一节,本节给出SQLHelp的具体实现方法--<YSFSQLHelp>,个人根据自己需要新建适合的类,本节根据参考网上资料,根据自己的需要编写的SQL帮助类.下面直接给出具体实现: / ...

  7. 使用Python接口自动化测试post请求和get请求,获取请求返回值

    引言我们在做python接口自动化测试时,接口的请求方法有get,post等:get和post请求传参,和获取接口响应数据的方法: 请求接口为Post时,传参方法我们在使用python中request ...

  8. 探秘高逼格艺术二维码的制作过程-AI绘画图生图

    在之前的文章<AI制作艺术二维码-文生图>中,我介绍了一种直接通过提示词生成高逼格二维码的方法,但是通过提示词我们无法很好的控制生成图片的样式,特别是有些同学想要将自己的Logo或者头像附 ...

  9. Pycharm里Python运行窗口显示乱码���的解决方法

    当你的Python程序运行后,会在运行窗口中显示乱码 ��� 等字样,如下 原因是 Pycharm中默认设置只显示UTF-8编码的格式,需要修改支持显示中文支持. 解决方法: 菜单中选择 File S ...

  10. T-star高校挑战赛部分wp

    web-1签到 checkin还是很基础的 网站上传存在js检测,禁用js即可上传 写PHP一句话木马上传,http://588f25a5.yunyansec.com/upload/test.php连 ...