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

但有时需要在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. 1 msql的安装和配置

    1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步使用yum安装时会报错: yum list installed | grep mysql mysql-libs.i686 ...

  2. windows内核学习一

    变量类型 kernel user ULONG unsigned long PULONG unsigned long* UCHAR unsigned char PUCHAR unsigned char* ...

  3. 上下文管理者(ServletContext)

    作用1.获取全局初始化参数2.资源共享(servlet通信) 能让上下文呢的Servlet相互关联起来3.获取资源文件 生命周期创建服务器启动的时候会为每个项目创建一个servletContext上下 ...

  4. Prism进入视图时导航的三种方式

    Prism导航 新建视图UserControl及其ViewModel,被跳转的视图的VM需要实现INavigationAware 在App.xaml.cs中注册视图及其ViewModel // App ...

  5. 前端vue仿京东天猫简单好用的瀑布流瀑布流式布局列表组件waterfall

    前端vue仿京东天猫简单好用的瀑布流瀑布流式布局列表组件waterfall, 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id=130 ...

  6. 让AI支持游戏AI模型:从经典AI算法到最新技术的应用

    目录 20. 让 AI 支持游戏AI模型:从经典 AI 算法到最新技术的应用 1. 引言 2. 技术原理及概念 2.1 基本概念解释 2.2 技术原理介绍 2.2.2 最新技术介绍 3. 实现步骤与流 ...

  7. Kubernetes应用编排与管理 —— Deployment升级策略

    1.Deployment概述 Deployment 是 Kubernetes 控制器的一种高级别实现,它构建于 ReplicaSet 控制器之上,它可用于为 Pod 和 ReplicaSet 资源提供 ...

  8. C++面试八股文:如何实现一个strncpy函数?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第31面: 面试官:strcpy函数使用过吧? 二师兄:用过. 面试官:这个函数有什么作用? 二师兄:主要用做字符串复制,将于字符从一个位置复制到另一 ...

  9. Unity UGUI的所有组件的介绍及使用

    Unity UGUI的所有组件的介绍及使用 本文将介绍Unity UGUI中的各个组件,包括它们的具体介绍.用途 1. Text(文本) 介绍:Text组件用于在UI界面上显示文本内容. 用途:常用于 ...

  10. RabbitMQ基本配置

    1.用户角色配置 自带的guest/guest 超级管理员五中不同角色配置: 普通管理者(management):仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理. 策略制定者(policy ...