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

但有时需要在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. MassTransit实现Saga模式概览

    原文地址:Saga Overview 编排一系列事件的能力是一个强大的功能,而MassTransit使这成为可能. saga是由协调器管理的长期事务.saga是由事件发起的,saga编排事件,saga ...

  2. Kafka在Linux下的安装和使用

    Kafka简介 Tips:本文主要介绍在Linux系统中安装和使用Lafka的操作步骤. 安装Kafka 访问Kafka官网,下载安装包版本(https://kafka.apache.org/down ...

  3. hw面试常见中间件漏洞

    apache漏洞 未知扩展名解析漏洞 漏洞原理:Apache对文件名后缀的识别是从后往前进行的,当遇到不认识的后缀时,继续往前,直到识别 影响版本:使用module模式与php结合的所有版本,apac ...

  4. 前后端分离架构下使用 Sa-Token 完成登录认证

    一.架构分析 目前绝大多数系统都已经采用 "前后端分离" 架构来设计了,传统的Session模式鉴权也不再适合这种架构(或者需要额外写很多的代码来专门适配). Sa-Token 是 ...

  5. Hybrid 实验

    实验拓扑 实验需求 按图示给各 PC 配置 IP 地址 PC1属于 VLAN 10 : PC2 与 PC5 属于 VLAN 20:PC4属于 VLAN 30 实现全网互通 实验步骤 1.配置链路聚合 ...

  6. std::aligned_alloc

    定义于头文件 <cstdlib> (c++) void * aligned_alloc ( std::size_t alignment, std::size_t size); (c++17 ...

  7. JWT解析详解

    JWT解析详解:> https://www.fke6.com/html/77107.html

  8. Blazor前后端框架Known-V1.2.4

    V1.2.4 Known是基于C#和Blazor开发的前后端分离快速开发框架,开箱即用,跨平台,一处代码,多处运行. Gitee: https://gitee.com/known/Known Gith ...

  9. 即构推出低延迟直播产品L3,可将直播延迟降到1s

    近日,全球云通讯服务提供商ZEGO即构科技推出低延迟直播产品Low-Latency Live,简称L3.这款产品对传统CDN直播中"延迟较大.弱网抗性差.观众端内容不同步"等问题进 ...

  10. AI识别检验报告 -PaddleNLP UIE-X 在医疗领域的实战

    目录 UIE-X在医疗领域的实战 1.项目背景 2.案例简介 3.环境准备 数据转换 5.模型微调 6.模型评估 7.Taskflow一键部署 UIE-X在医疗领域的实战 PaddleNLP全新发布U ...