2019独角兽企业重金招聘Python工程师标准>>>

一 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返回

转载于:https://my.oschina.net/kavensu/blog/272444

Unix Vi命令基本用法相关推荐

  1. linux 中vi 命令的用法

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

  2. Unix Vi 命令详解

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

  3. linux命令vi作用,详解Linux常用命令的用法(二)――――文本编辑器命令vi/vim

    vi/vim介绍 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. 1.vi和vim的区别: 就是在进入一般命令模式后,当按下(i.I.o ...

  4. unix和linux命令_Linux / Unix系统中SSH命令的用法

    unix和linux命令 Any security-minded Linux user will always use SSH protocol when connecting to servers. ...

  5. linux 移动剪切命令,Linux中vi的复制命令的用法详解

    在Linux系统中,使用VI编辑的时候经常用到的操作就是复制粘贴,那么下面由学习啦小编为大家整理了linux中vi的复制命令的用法详解的相关知识,希望对大家有帮助! Linux中vi的复制命令的用法详 ...

  6. 【Notes8】Linux开发环境,Linux命令,vi命令,/正则,Hash,iNode,文件查找与读取,Linux开机自启动

    文章目录 1.VMware和CentOS安装:两个网络适配器是虚拟机的,Linux抄袭unix,Mac os是unix的皮肤 2.CRT安装:netstat -nal | grep 22,改注册信息要 ...

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

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

  8. UNIX经典命令详解

    UNIX经典命令详解 第一章 目录及文件操作命令 1.1 ls [语法]: ls [-RadCxmlnogrtucpFbqisf1] [目录或文件......]  [说明]: ls 命令列出指定目录下 ...

  9. Linux中cron的用法,Linux中cron命令的用法详解

    linux中有一个命令可以定期来执行系统任务.这就是crond服务.下面介绍下crontab命令的用法. linux任务调度的工作主要分为以下两类: 编辑/etc/crontab 文件配置cron c ...

  10. Linux vi命令大全

    分享一些Linux vi命令札记.曾经使用了两年多的Vim,手册也翻过一遍.虽然现在不怎么用vim了,曾经的笔记还是贴出来,与喜欢vim的朋友分享. 索引 1. 关于Vim 1.1 Vim的几种模式 ...

最新文章

  1. 独家 | 2种数据科学编程中的思维模式,了解一下(附代码)
  2. 获取枚举类型的 中文 描述 和值
  3. [转] SQL Server中变量的声明和使用方法
  4. truncate table 非常慢_你真的知道怎么分析mysql的慢sql吗?
  5. python 和C语言 中的一些容易混淆的符号整理
  6. 微信小程序头部导航栏自定义
  7. A股开盘:深证区块链50指数跌0.46%,泰豪科技涨停
  8. JAVA 文件下载乱码问题解决办法
  9. 人声修音插件 – Antares Auto-Tune Pro 9.1.0.5 WiN
  10. 计算机中官方文档阅读方法,中国知网-帮助中心
  11. 三段式状态机的写法总结
  12. 基于SSM的校园二手交易平台的设计与实现
  13. 计算机网络强制100M,网络连通性故障分析与排除二例
  14. c语言pow函数原型_C语言pow函数
  15. 植物研究最新进展(2021年11月)
  16. CF1437F Emotional Fishermen
  17. 移动端h5 下拉框 demo (原生的也太丑了把)
  18. 清除90天苹果充值记录_王者荣耀安卓苹果跨系统角色转移服务,限量测试收费99元...
  19. 玩玩破解 01——入门
  20. 蒙特卡洛python求解派_用蒙特卡洛方法计算派-python和R语言

热门文章

  1. 移动开发者应注意的2012年五趋势
  2. linux上使用wget下载文件
  3. 微擎系统 微信支付 get_brand_wcpay_request:fail
  4. mysql CMD命令
  5. (最短路)17bupt新生赛——F. ch追妹
  6. loadrunner使用system()函数调用Tesseract-OCR识别验证码遇到的问题
  7. C算法及PHP学习笔记_01
  8. 限流的简单使用及学习
  9. Windows Server 2012 搭建DHCP及远程路由访问
  10. Lua学习小记——语言