Linux中vi的常用命令和快捷键使用

简介: Linux中vi的常用命令和快捷键使用

一、VI简单介绍

vi三种模式:

  • 底行模式
  • 编辑模式
  • 一般模式

分别举一个简单的小例子,说明三种模式

二、VI三种模式的使用

1、VI底行模式的使用

进入地行模式的输入模式,先按Esc键,然后按Shift + :组合键

  1. 查找某个字符串:"/"

    命令: 在底行模式中输入: / 字符串
    在命令模式下敲斜杆( / )这时在状态栏(也就是屏幕左下脚)就出现了 “/” 然后输入你要查找的关键字敲回车就可以了。 如果你要继续查找此关键字,敲字符 n 就可以继续查找了。 敲字符N就会向前查询

  2. set nu

    显示行号,设定之后,会在每一行的前缀显示该行的行号

  3. set nonu

    与 set nu 相反,为取消行号!

  4. 从vi模式退出到命令行模式中(退出操作)
    • q :不保存退出
    • q!:强制退出且不保存
    • wq:保存退出
    • wq!:强制保存且退出

      2、VI编辑模式的使用

3、VI一般模式的使用

1)移动光标

  1. H: 光标移动到这个屏幕最上方那一行的第一个字符
  2. M:``光标移动到这个屏幕中央那一行的第一个字符
  3. L: 光标移动到这个屏幕最下方那一行的第一个字符
  4. G: 移动到这个档案最后一行(==常用==)
  5. nG: n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)==nG和ngg的用法是效果是一样的==

  6. gg: 移动到这个档案的第一行,相当于 1G 啊! (==常用==)

  7. n<Enter> :n 为数字。光标向下移动 n 行(==常用==)

2)删除、复制和粘贴

  1. x: 删除光标所在位置的一个字符(相当于del键)
  2. X:删除光标左边的一个字符(相当于backspace键)
  3. dd:删除光标所在的那一行(==常用==)
  4. ndd:n 为数字。删除光标所在的向下 n 行例(包括光标所在的那一行)如 20dd 则是删除 20 行 (==常用==)
  5. d1G:删除光标所在到第一行的所有数据
  6. dG:删除光标所在到最后一行的所有数据
  7. d0:那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
  8. d$: 删除游标所在处,到该行的最后一个字符

  1. yy:``复制游标所在的那一行(==常用==)
  2. nyy:nyy n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(==常用==)
  3. y1G:复制游标所在列到第一列的所有数据
  4. yG:复制游标所在列到最后一列的所有数据
  5. y0: 复制光标所在的那个字符到该行行首的所有数据
  6. y$:复制光标所在的那个字符到该行行尾的所有数据

  1. p:将已经复制的文字粘贴到光标的下一行(==常用==)
  2. P:将已经复制的文字粘贴到光标的上一行(==常用==)

  1. u:复原前一个动作(相当于撤销)。(常用)
目录
相关文章
|
12天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
173 73
|
5天前
|
Linux Shell
Linux 中 Tail 命令的 9 个实用示例
Linux 中 Tail 命令的 9 个实用示例
27 6
Linux 中 Tail 命令的 9 个实用示例
|
10天前
|
Linux 应用服务中间件 nginx
|
3天前
|
存储 Linux 编译器
linux中vim介绍以及常用命令大全
linux中vim介绍以及常用命令大全
26 8
|
1天前
|
设计模式 Java Linux
Linux的20个常用命令
Linux的23个常用命令
Linux的20个常用命令
|
5天前
|
机器学习/深度学习 安全 网络协议
Web安全-Linux网络命令
Web安全-Linux网络命令
10 1
|
10天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
|
10天前
|
Linux Shell 网络安全
Linux 用户管理命令
本文详细介绍了Linux系统中的各类常用命令,包括用户管理(如`adduser`, `usermod`, `passwd`等)、系统操作(如关机、重启、注销)、磁盘管理(如`df`, `mkfs`, `mount`)及网络管理(如`ifconfig`, `ping`, `ssh`)等。通过具体示例展示了每个命令的基本用法和应用场景,帮助用户更好地理解和掌握Linux系统的管理和操作技巧。
|
10天前
|
存储 Ubuntu Linux
linux中的find 命令详细用法
本文介绍了如何将 `find` 命令与 `exec` 结合使用,通过具体示例展示了多种应用场景,如显示文件属性、重命名文件、收集文件大小、删除特定文件、执行工具、更改文件所有权和权限、收集 MD5 值等。文章还探讨了 `{} \;` 和 `{} +` 的区别,并演示了如何结合 `grep` 命令进行内容搜索。最后,介绍了如何在一个 `find` 命令中使用多个 `exec` 命令。这为 Linux 用户提供了强大的文件管理和自动化工具。
|
10天前
|
Shell Linux API
C语言在linux环境下执行终端命令
本文介绍了在Linux环境下使用C语言执行终端命令的方法。首先,文章描述了`system()`函数,其可以直接执行shell命令并返回结果。接着介绍了更强大的`popen()`函数,它允许程序与命令行命令交互,并详细说明了如何使用此函数及其配套的`pclose()`函数。此外,还讲解了`fork()`和`exec`系列函数,前者创建新进程,后者替换当前进程执行文件。最后,对比了`system()`与`exec`系列函数的区别,并针对不同场景推荐了合适的函数选择。