Chinaunix首页 | 论坛 | 博客
  • 博客访问: 620419
  • 博文数量: 168
  • 博客积分: 1053
  • 博客等级: 少尉
  • 技术积分: 1187
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-30 17:20
个人简介

公众号【嵌入式er笔记】持续记录和分享C/C++、Linux、ARM、Android、IoT等技术相关知识,以及职场、生活经验和感悟。

文章分类

全部博文(168)

分类: LINUX

2013-03-11 15:21:57

原文地址:vi文本编辑使用 作者:lrfgjj2

前言:此版本修改于徐老师的(Benet2.0_s1_linux课程命令整理v1.0版)遵循GPL协议!转贴请注明出处!3ks!
作者:Antiy7 (http://bluexjj.cublog.cn
vi文本编辑
linux下文本编辑器
本章目标:
了解linux系统中的编辑器知识
掌握vi编辑器的模式切换
掌握vi编辑器的操作命令
linux文本编辑器概述
行编辑器
全屏幕编辑器:vi gedit
字符界面编辑器与图形界面编辑器
文本编辑器:vi Emacs nano gedit
vi文本编辑器
Vi的3种模式:
     命令模式
     输入模式
     末行模式
3种模式转换:
  命令模式>>>>i(isaoc)>>>>输入模式
  输入模式>>>>Esc>>>>命令模式
  命令模式>>>>shift+:>>>>末行模式
  末行模式>>>>Esc>>>>命令模式
Vi编辑器的基本使用
1、vi编辑器的启动与退出
   # vi                       新建一个空白的文档。
2、退出vi编辑环境
   # q!                      强制退出编辑器(不保存当前的修改)。
3、进入编辑环境并打开文件
   # vi file            指定打开某文档。
文件操作
1、打开新文件
   : e  filename           打开文件(请确认当前正编辑文件已经保存,不然无法执行)。
   : e! filename           强制关闭当前文件(不保存)并打开指定文件。
2、读取文件内容到当前文件
   :r filename              读取参数中的文件,并将文件粘贴到光标所在行的下面(类似插入)。
3、保存文件
   : w                        常规保存文件。若当前文件没有文件名执行命令时会提示输入文件名。
   : w filename            另存为文件,使用指定另存为的文件名作为参数。
   : w!                       对于没有写入权限的文件强行写入。只限于root帐户!
4、退出vi编辑器
   : q                         适用于已经保存或没有修改过的文件。
   : wq                      保存并退出。
   : q!                        强行退出,不保存当前的修改。
光标移动操作
1、光标方向移动
          h 左 、l右、k上、j下
2、翻页移动
   ctrl+f:向前翻整页、ctrl+b向后翻整页、ctrl+u向前翻半页、ctrl+d向后翻半页
3、行内快速跳转
   ^      将光标快速跳转到本行的行首。
   $      将光标快速跳转到本行的行尾。
   W     将光标快速跳转到当前位置的后一个单词的首字母。
   b      将光标快速跳转到当前位置的前一个单词的首字母。
   e      将光标快速跳转到当前位置的后一个单词的尾字母。
4、文件内行间快速跳转
   : set nu                  显示行号。
   : set nonu              取消显示行号。
编辑操作
1、进入输入模式
   : i                       在当前光标处进入插入状态。                    
   : a                      在当前光标后进入插入状态。
   : A                      将光标移动到当前行的行末,并进入插入状态。
   : o                      在当前行的下面插入新行,光标移动到新行的行首,进入插入状态。
   : O                      将当前行的上面插入新行,光标移动到新航的行首,进入插入状态。
   : cw                    删除当前光标到所在单词的尾部的字符,并进入插入状态。
   : c$                     删除当前光标到行尾的字符,并进入插入状态。
   : c^                    删除当前光标之前到行首的字符,并进入 插入状态。
2、输入模式的操作
   使用上下左右方向键进行光标的移动。
   home和end 键快速定位光标到行首和行尾。
   pageup pagedown 健进行文本的上下翻页。
   backspace (退格)键进行光标左侧字符的删除。
   delete 键删除光标位置的字符。
3、删除操作(命令模式)
   x       删除光标处的单个字符。                 
   dd     删除光标所在行。
   dw    删除当前字符到单词尾(包括空格)的所有字符。
   de     删除当前字符到单词尾(不包括单词尾部的空格)的所有字符。
   d$     删除当前字符到行尾的所有字符。
   d^     删除当前字符到行首的所有字符。
   J       删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容。
4、撤销操作(命令模式)
   u       撤销最近一次的操作,并恢复操作结果,可多次使用u来恢复已经进行了多步操作。
   U       撤销当前进行的所有的操作。(文件自上次保存到现在的操作)。
   ctrl+R   对使用u命令撤销的操作进行恢复。
5、复制操作(命令模式)
   yy      复制当前行整行的内容到vi缓冲区。
   yw     复制当前光标到单词尾字符的内容到vi缓冲区。
   y$      复制当前光标到行尾的内容到vi缓冲区。
   y^      复制当前光标到行首的内容到vi缓冲区。
6、粘贴操作(命令模式)
   p        使用p命令读取缓冲区的内容并粘贴到光标当前的位置(不覆盖文件已有的内容)。
7、查找与替换操作:(末行模式)
   /word  自上而下的查找操作,
   ?word  自下而上的查找操作,
         输入n命令查找下一个匹配的字符串。
         输入N命令查找(由下而上)下一个字符串。
替换操作
   :s/old/new            只在当前行进行匹配和替换、命令替换当前行中第一个匹配的字符
   :s/old/new/g         在当前行替换所有匹配的字符串
   :#,#s/old/new/g    在行区域内进行替换操作,例:22,33s/old/new/g
   :%s/old/new/g      在整个文档中进行替换操作的命令
使用替换的确认功能
  :s/old/new/c
  :s/old/new/gc
  :#,#s/old/new/gc
  :%s/old/new/gc
例:
replace with st01 (y/n/a/q/l/^E/^Y)?
  y    替换当前已经定位的匹配字符串。
  n    不替换当前已经定位的匹配字符串。
  a    替换指定范围内所有的匹配字符串。
  q    退出确定界面,并取消当前命令所有的替换操作。
vi编辑器的在线帮助
安装vi编辑器的其他软件包:
                  将RHEL4的第2张光盘放入光驱,并使用root帐户登陆操作。
  # mount /media/cdrom              挂载光盘驱动器。
  # cd /media/cdrom/RedHat/RPMS/    进入软件包目录。
  # rpm -i vim-common-6.3.035-3.i386.rpm vim-enhanced-6.3.035-3.i386.rpm
  warning: vim-common-6.3.035-3.i386.rpm: v3  DSA signature: NOKEY, key DI
  ab42a60e
  # cd                              返回当前用户的宿主目录。
  # umount /media/cdrom/            卸载光盘驱动器。
使用vi编辑器在线帮助:
  :help           在末行直接输入将显示所有帮助信息。
  :help X         在帮助中指定查找与x相关的帮助信息。
编辑器的多文件操作
1、多文件操作的vi启动
  #vi passwd fstab inittab
  vi编辑器将在当前的编辑屏幕中显示vi命令参数中的第一个文件,其他文件处于后台运行不显
  示的!vi编辑器在同一时刻只能编辑当前屏幕中的文件,如要编辑他文件需要进行文件切换! 
2、多文件切换
  显示多文件信息
   :args          察看多文件的排序。
  前后切换多文件
   :next          对vi中打开的多个文件进行向后切换。
   :prev          对vi中打开的多个文件进行向前切换。
   后面接上"!"可以在前后切换文件的同时丢弃对当前文件的修改内容。
  定位首文件和尾文件
   :first           对vi中打开的多个文件进行当前文件和首文件切换。
   :last            对vi中打开的多个文件进行当前文件和尾文件切换。
  快速文件切换
   ctrl+^         在两个文件之间进行切换,适用于参考对照进行的文本修改的环境下应用。
  分屏显示多个文件
   # vi -o xxx yyy zzz    水平分屏显示xxx yyy zzz 3个文件。
   # vi -O xxx yyy zzz    垂直分屏显示xxx yyy zzz 3个文件。
图形界面下的编辑文本:
   使用gedit图形编辑器
   图形终端命令行启动:  gedit
   菜单启动:Applications----Accessories-----Text Editor
gedit图形界面程序使用
    略!
阅读(966) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~