ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

小知识:vi如何使用列编辑模式快速插入

2022-05-31 06:31:56  阅读:123  来源: 互联网

标签:mynas log dest vi 知识 db 插入 file prod


经常需要用到列编辑这种操作,现在很多超文本的编辑器都可以轻松实现。
但有时需要在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'

是不是很简单?
好了,现在可以自己练习再改回去吧_

标签:mynas,log,dest,vi,知识,db,插入,file,prod
来源: https://www.cnblogs.com/jyzhao/p/16329042.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有