(收藏)[Unix] vi基本操作方法

一 vi的操作模式
vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。在输入模式下,用户可输入文本资料。在指令模式下,可进行删除、修改等各种编辑动作。

在输入模式下,按Esc键切换到指令模式下。
在指令模式下,按输入指令(i、a、o等)进入输入模式。

二 进入vi

$ vi  filename

直接键入“vi + 所要编辑的文件名”,即可对指定的文件进行编辑。
如果指定的文件为新文件,则提示:“New file”,否则显示该文件的当前内容。

$ view filename

以只读方式打开文件filename

三 指令模式
3.1 进入输入模式

 a     在当前游标之后输入
 A     在当前行之末输入
  i     在当前游标之前输入
  I     在当前行之首输入
 o     在当前行之下新增一行,并在新增行输入
 O     在当前行之上新增一行,并在新增行输入
输入结束后,按Esc键退出输入模式

3.2 游标移动

 h 向左移动一个字元
 l 向右移动一个字元
 j 向下移动一个字元
 k 向上移动一个字元
 b 左移一个单词,至词首
 w 右移一个单词,至词尾
 0  移到当前行行首
 $ 移到当前行行尾
 + 移至下一行的行首
 - 移至上一行的行首
 H 移至视窗的第一行
 M 移至视窗的中间一行
 L 移至视窗的最后一行
 G 移至该文件的最后一行
 nG 移至该文档的第n行
 n+ 下移n行
 n- 上移n行

3.3 视窗移动

 <Ctrl> + f 视窗下卷一页
 <Ctrl> + b 视窗上卷一页
   <Ctrl> + d 视窗下卷半页
 <Ctrl> + u 视窗上卷半页
  <Ctrl> + e 视窗下卷一行
  <Ctrl> + y 视窗上卷一行

3.4 删除操作

 x 删除游标所在字元
 X 删除游标前一字元
 dw 从游标当前位置开始向后删除一个单词
 db 从游标当前位置开始向前删除一个单词
 d0 从行首删除至当前游标位置
 d$ 从游标当前位置删除至行尾
 dd 删除游标所在行
 D 同d$

3.5 修改操作

 s 修改游标所在字元,修改完成后按Esc键结束
 S 修改整行内容,修改完成后按Esc键结束
 r 替换当前游标所在字元
 R 进入替换状态,直至按Esc键结束
 cw 修改一个单词(从游标位置至词尾)
 cb 修改一个单词(从词首至游标位置)
 cc 修改整行内容,完成后按Esc键结束,同S
 c0 修改行首至游标位置的内容
 c$ 修改游标位置至行尾的内容
 ~ 游标所在字元大小写切换

3.6 指令重复
在指令模式中,可在指令前面加入一个数字n,则该指令会重复执行n次。常用的重复操作有:

 nx 删除n个字元
 ndd 删除n行
 ns 修改n个字元

3.7 取消前一动作(Undo)

 u 撤消上一指令的结果

3.8 查找字符串

 /字符串 从当前游标向后查找该字符串
 ?字符串 从当前游标向前查找该字符串
 n 从当前游标向后查找下一个字符串
 N 从当前游标向前查找下一个字符串

3.9 查看编辑状况

 <Ctrl> + g 显示正在编辑的文件名、当前游标所在行数、文件总行数、文件是否被修改

四 保存与退出

 :w 保存,但不退出
 :wq 保存并退出
 :x 同:wq
 :q 退出,如果当前文件没有保存,禁止退出
 :q! 不保存退出
 :w file1 将内容保存至文件file1中,注意:此时编辑的仍为原文件
 :w! file1 将内容覆盖保存至文件file1中,如文件file1存在,:w file1将禁止执行

五 环境设置

 :set 显示已设置的环境状况
 :set all 显示所有的环境设置选项
 :set nu 显示行号
 :set nonu 不显示行号
 :set ts = n 设置Tab键的长度为n

六 执行指令
以下用具体的数字为例进行介绍,数字表示行数,游标所在行可用“.”代替,文件最后一行可用“$”代替。

 : 10 , 20d 删除第10行至第20行的内容
 :10d 删除第10行的内容
 :%d 删除全部内容
 : 10 , 20co30 将第10行至第20行的内容复制到第30行之后
 : 10 , 20mo30 将第10行至第20行的内容移动到第30行之后
 : 1 , $s/old/new 将第1行至最后一行中的old替换成new
 : 1 , $s/^/new 将第1行至最后一行的内容前面插入new
 : 10  将游标移至第10行

七 重复指令

 . 重复上一条指令

八 切换到shell状态

 :sh 切换到shell状态,exit返回

posted on 2008-07-15 10:26 jackyrong的世界 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/jackyrong/archive/2008/07/15/1243165.html

(收藏)[Unix] vi基本操作方法相关推荐

  1. LINUX/UNIX vi全屏幕编辑器

    vi命令是unix下常用而重要命令,可在全屏幕方式下编辑一个或多个文件.若在vi执行时没有指定一个文件,那么vi命令会自动产生一个无名的空的工作文件.若指定的文件不存在,那么就按指定的文件名创建一个新 ...

  2. Unix Vi 命令详解

    进入vi的命令 vi  filename   :打开或新建文件,并将光标置于第一行首 vi  +n filename  :打开文件,并将光标置于第n行首 vi  + filename    :打开文件 ...

  3. 360浏览器html位置,win7系统查看360浏览器收藏夹位置的操作方法

    很多小伙伴都遇到过对win7系统查看360浏览器收藏夹位置进行设置的困惑吧,一些朋友看过网上对win7系统查看360浏览器收藏夹位置设置的零散处理方法,并没有完完全全明白win7系统查看360浏览器收 ...

  4. vi编辑器操作方法——退出、保存、另存

    一些常用命令,加黑部分命令比较重要: o进入编辑模式, 编辑结束, 按ESC 键 切换到命令模式,然后输入以下命令进行相应操作: :w保存文件但不退出vi 编辑 :w! 强制保存,不退出vi 编辑 : ...

  5. Linux vi编辑器的使用

    一.Unix编辑器概述       编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Unix及其相似的ix 操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一 ...

  6. vi 编辑器命令 (share)

    转自:http://man.ddvip.com/soft/vieditor/vi.html 一.Unix编辑器概述 编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Uni ...

  7. vi 命令 使用方法

    一.Unix编辑器概述       编辑器是使用计算机的重要工具之中的一个,在各种操作系统中,编辑器都是不可缺少的部件.Unix及其类似的ix 操作系统系列中,为方便各种用户在各个不同的环境中使用,提 ...

  8. vi 命令 用法 (vi 方向鍵及 backspace 的問題 )

    进入vim后,安i进入insert模式,这是backspace键不管用而且安方向键会出现ABCD,网上说配置以下家目录下的.vimrc,但是fedora 12 下没有这个文件.怎么解决呢 新建一个文件 ...

  9. Vi编辑器完全使用手册

    一.Unix编辑器概述    编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Unix及其相似的ix操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一系列的e ...

最新文章

  1. SAP MM MRP运行后触发的PR单据里没有Assign采购组织?
  2. 五分钟重温斐波那契数列
  3. 爬虫python教程百度云_Python爬虫比较基础的教程视频百度云网盘下载
  4. 适用于Java开发人员的Elasticsearch教程
  5. 程序员考核的五大死因
  6. BUPT 2012复试机考 2T
  7. IPv6 to IPv4过渡技术——NAT64配置实例
  8. 华为设备配置Easy IP 地址转换
  9. 学计算机的女生容易脱单,最容易让男生脱单的5个大学专业,特别是第3个,女生会倒追你!...
  10. 解决win10虚拟机和主机不能互相粘贴复制的问题
  11. 5214页PDF的进阶架构师学习笔记,阿里巴巴内部Jetpack宝典意外流出
  12. 染色体的基因顺序遗传图谱
  13. 阿里云有奖调查!赠10个阿里巴巴logo胸针
  14. 一张图解析FastAdmin中的FormBuilder表单生成器
  15. 匈牙利离散(板子向)
  16. 周鸿祎:互联网成功十大案例
  17. Java各阶段学习书目
  18. 计算机微机原理心得体会,微机原理课设体会心得体会
  19. 【“工业大数据预测”系列】——第3篇:基于统计和信号的特征提取
  20. 【Linux】Linux的挂载原理 |MOUNT|挂载NAS|自动挂载

热门文章

  1. HDU 3932 模拟退火
  2. POJ 2823-Sliding Window单调队列解题报告
  3. Microsoft Sync Framework 系列(三):微软同步框架出现背景及要解决的问题
  4. pymysql的安装
  5. 深度解析大数据可视化管理平台的监控功能
  6. NVIDIA | 一种重建照片的 AI 图像技术
  7. 中国计算机考试区别及求职的相关思考
  8. view技术简单了解
  9. CString + UINT Error:有多个运算符+=与这些操作数匹配
  10. ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园