Linux基本操作之vi编辑器

  • 一、Vi编辑器的启动和退出
    • 启动
    • 退出
  • 二、Vi编辑器的工作模式
    • 编辑模式
    • 插入模式
    • 命令模式
  • 三、Vi编辑器的基本命令
    • 文件相关命令
    • 字符串搜索、替换和删除
    • 文本的复制、删除和移动
  • 四、C/C++编辑器gcc的使用
    • 1.编写代码
    • 2.使用命令编译和运行

一、Vi编辑器的启动和退出

启动

  1. 输入 Vi 和想要编辑或建立的文件名,便可进入Vi编辑器
  2. 直接输入Vi,不带文件名,也可进去Vi编辑器

退出

:q           退出,修改后未存盘不能退出
:q!         强制退出(不保存退出)
:w          存盘并退出
:x          存盘并退出,等同于:wq
:w filename     另存为filename
:wq         保存退出
:wq! filename       以filename为文件名保存后退出
ZZ      大写的Z,若文件没有更改,则不存储离开;若文件更改过则存储后离开

最常用指令为

  • :wq 保存退出
  • !q强制退出

二、Vi编辑器的工作模式

Vi编辑器有3中基本工作模式:编辑模式、插入模式和命令模式

编辑模式

进入Vi后,首先进入的就是编辑模式,进入编辑模式后等待编辑命令输入,这时输入的第一个字母都将作为编辑命令来解释。
编辑命令有:

  • 插入命令i
  • 附加命令a
  • 打开命令o
  • 修改命令c
  • 替换命令s
    以上命令都可进入插入模式
    最常用命令: i

插入模式

在插入模式下输入的任何字符都被Vi编辑器当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中(插入模式下),若想回到命令模式下,按ESC键即可。

按ESC键后底部的 insert字样消失

命令模式

在编辑模式下,用户按“:”键即可进入命令模式,此时作为命令模式的提示符,等待用户输入命令。

三、Vi编辑器的基本命令

文件相关命令

:w filename          将编辑的数据存储到另一个文件中
:nw filename        将第n行写到filename文件中
:n1,n2 w filename   把n1到n2写到文件中
:1,. w filename     从1行到光标当前行写到filename中
:.,$ w filename     从当前行结尾写到filename中:r filename            打开另一个文件filename
:f filename         把当前文件改名为filename
:e filename         新建filename文件

字符串搜索、替换和删除

:/str/       从当前光标开始往右移动到有str的地方
:?str?      从当前光标开始往左移动到有str的地方
:/str/ w filename       将包含有str的行写进文件filename中
:/str1,/str2/ w filename    将str1开始到str2结束的内容写入filename
:/s/str1/str2/          将第1个str1替换为str2
:/s/str1/str2/g         将所有的str1替换为str2

文本的复制、删除和移动

:/str1,/str2/d       删除从str1开始到str2为止的所有内容
:n1,n2 co n3        将从n1开始到n2为止的所有内容复制到n3后面
:n1,n2 m n3         将从n1开始到n2为止的所有内容移动到n3后面
:.,$ d      删除从当前行到结尾的所有内容
:d          删除当前行
:nd         删除当前行开始的n行
:n1,n2 d    删除从n1开始到n2为止的所有内容

四、C/C++编辑器gcc的使用

1.编写代码

在用户当前目录,使用Vi编辑器输入如下代码,并保存成文件hello.c:

#include <stdio.h>
int main(void)
{printf ("Hello world, Linux programming!\n");return 0;
}

2.使用命令编译和运行

然后执行下面的命令编译和运行这段程序:

gcc hello.c -o hello     //编译
./hello                 //运行
Hello world, Linux programming!     //结果

Linux基本操作之vi编辑器相关推荐

  1. 编辑Linux系统实验,linux操作系统实验vi编辑器的使用

    姓名: 学号 班级: 实验二 vi编辑器的使用 一.实验目的 1. 掌握Linux系统的vi编辑器 2. 掌握Linux系统的文本编辑 二.实验环境 1. Linux软件和计算机 三.实验内容或步骤 ...

  2. linux中在vi编辑器中执行存盘退出命令是?

    linux中在vi编辑器中执行存盘退出命令是? 方法一:首先需要按ESC键回到命令模式,然后按:wq. 方法二:按住shift再按两下'z'键.

  3. Linux中设置vi编辑器的编码格式以及使用

    Linux中设置vi编辑器的编码格式以及使用 vi ~/.vimrc set fileencodings=utf-8,gbk set termencoding=utf-8 set encoding=u ...

  4. delphi中richedit中光标如何定位到最后_嵌入式开发之Linux系统中Vi编辑器的使用

    请大家关注点赞,已经完成物联网相关开发,会从硬件层,硬件中间层,传输层,软件中间件(物联网云平台),APP开发相关博文.首先从嵌入式开发博文开始!上一节关于<>.本节关于Linux系统中V ...

  5. Linux如何退出VI编辑器

    Linux如何退出VI编辑器 2008-10-22 09:55 :q退出    :q!强行退出(不存盘)    :qw or ZZ存盘退出    用ESC键只能切换到命令状态 更加详细内容: 在 li ...

  6. 【大数据前置基础】Linux系统中VI编辑器使用、文件目录操作、权限管理、Java安装

    VI编辑器使用.文件目录操作.网络配置.常用命令与shell编程 1 VI编辑器使用 2 文件目录的操作 2.1 ls 显示文件和目录列表 2.2 mkdir 创建目录 2.3 cd 切换目录 2.4 ...

  7. linux基础(Vi编辑器)

    整理的linux vi编辑器命令 Vi编辑器,进入方式,输入vi file即可进入编辑模式 1.vi模式(Linux严格区分大小写) Vi所学到的几种模式 模式 主要用途 相应操作 对应命令 普通模式 ...

  8. linux用vi写文件内容,Linux下利用vi编辑器创建文件并写入内容 专家详解

    Linux系统作为一款以命令行操作为主的系统,vi编辑器无疑大大扩展了命令行的功能,使用户在命令行下可以进行文件的各种操作,学会vi编辑器的使用无疑是非常必要的.而且vi的使用和vim的使用非常相似, ...

  9. linux 问题-——退出vi编辑器 wq失效

    退出linux的vi编辑器时,先按左上角的esc按键,再输出输入命令 保存不退出 w 强制保存但不退出 w! 保存并退出 wq 强制保存并退出 wq! 不保存退出 q 不保存并强制退出 q! 出现以下 ...

  10. 常用的linux命令以及vi编辑器操作指令

    常用的基本命令 绝对路径和相对路径 绝对路径: 路径的写法,由根目录 / 写起,例如:/usr/local/nginx 这个目录. 相对路径: 路径的写法,不是由 / 写起,例如由 /usr/loca ...

最新文章

  1. ceph osd 相关命令
  2. css控制非固定文本自动换行
  3. Variant Analysis(变种分析)——使用已知漏洞发掘未知漏洞
  4. ubuntu之路——day8.4 Adam自适应矩估计算法
  5. mysql characterencoding 枚举值_mysql中enum类型理解,读完之后,大部分程序员收藏了......
  6. SpringBoot内部配置:“application.properties配置”和”使用XML配置”,读取属性文件中的内容,日志配置,Profile配置(学习:SpringBoot实战)
  7. SAP CRM呼叫中心的邮件发送实现 - Function module CRM_EMAIL_SEND_EMAIL
  8. html图片通过照片查看器打开图片,在Windows7中打开照片,提示“Windows 照片查看器无法显示此图片,因为计算机上...
  9. linux的驱动开发——内核模块的编译
  10. 设计java每行输出5个数_程序设计入门—Java语言 第五周作业
  11. 汇编语言指令功能总结
  12. 在linux下用C语言编写贪吃蛇小游戏
  13. STM32硬件CRC计算CRC8
  14. 旅游项目的短期目标、中期目标、长期目标怎么写
  15. 系统集成项目管理工程师英语题翻译
  16. Java各种运算符号的含义及区别汇总
  17. 【SpringBoot2—junit5断言、前置条件】
  18. 软件测试qq是不是微信号,如何批量检测出QQ号是否开通微信?
  19. Wi-Fi无线网络下行速度超级慢 (5kb/s)之解决方案
  20. STM32 CUBEIDE MacOS首次使用笔记

热门文章

  1. 举例 微积分 拉格朗日方程_拉格朗日方程的应用及举例08讲(推荐文档)
  2. linux查看服务进程发包,11月18日linux服务器后,服务器向外发包,CPU达99%以上
  3. robotium和appium区别
  4. 建站之星网站 和服务器,建站之星网站 和服务器
  5. flac怎样转换成mp3格式
  6. 最新Oreo易支付源码开源版
  7. 校园网自动登录Python版
  8. 数学建模多元分析实例
  9. 惠普m128fn中文说明书_惠普M128fp中文说明书
  10. java excel 透视_在Java中用Excel创建数据透视表和数据透视图