热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vi是linux文本界面编辑器吗,[转载]linux中vi文本编辑器

制作:吕家骏原创作品,欢迎大家转载,共同学习。QQ:2471606943本节向大家介绍下linux系统的vi编辑器的基础应用

制作:吕家骏

原创作品,欢迎大家转载,共同学习。QQ:2471606943

本节向大家介绍下linux系统的vi编辑器的基础应用和工作环境。

vi是一个功能强大的全屏幕文本编辑器工具,一直以来都作为类UNIX操作系统的默认文本编辑器,vim是vi编辑器的增强版。在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim成为vi。

alias

vi=‘/usr/bin/vim’ 为vim制作别名vi

,将vi指向vim程序

1 vi编辑器的工作模式

vi是工作在字符终端环境下的全屏幕编辑器。在vi编辑器界面中可以使用三种不同的工作模式。

> 命令模式

:启动vi编辑器后默认进入命令模式。

> 输入模式

:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改或者添加内容。

> 末行模式

:该模式中可以设置vi编辑环境,保存文件,退出编辑器以及对文件内容的查找。

a4c26d1e5885305701be709a3d33442f.png

从命令模式按冒号“:”进入末行模式,而按a i

o s等键可以进入输入模式,在末行模式,输入模式按Esc键均可切换到命令模式。

cp /etc/inittab

./vitest,file 复制inittab文件到当前目录下并命名为vitest.file

vi

vitest.file 用vi打开vitest.file 文件

(因为毕竟第一次接触vi

所以最好不要直接去修改系统文件。用复制的文件来做练习最好)

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

1

模式切换(下面列出的都是常用的切换键)

> a :

在当前光标位置之后插入内容

> A :

在光标所在行的末尾插入内容

> i :

在当前光标位置之前插入内容

> I :在光标所在行的开头插入内容

> o :

在光标所在行的后面插入一个新行

> O :

在光标所在行的前面插入一个新行

set nu

末行模式输入,显示行数

a4c26d1e5885305701be709a3d33442f.png

2 移动光标

> 光标方向的移动:用 → ← ↑ ↓

四个方向键控制

> 翻页移动: 向下翻动一整行内容: Poge Down 键

和 Ctrl + F 键

向上翻动一整行内容:

Poge Up 键 和 Ctrl + B 键

>

行内快速跳转:跳转到行首: Home键或“^”或数字 0

跳转到行尾: End键或“$”

> 行间快速跳转:跳转文件的第一行:1G 或 gg

跳转最后一行:G

跳转文件中的#行:“#G”(#代表具体的数字替换)

3 复制,粘贴和删除

a4c26d1e5885305701be709a3d33442f.png

4 查找文件内容

a4c26d1e5885305701be709a3d33442f.png

5 撤销编辑及退去和保存

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

:w

/root/newfile 将当前编辑的文件保存到root目录,并命名为newfile

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

:e ~/install.log 将直接打开宿主目录下的所有install.log文件进行编辑

a4c26d1e5885305701be709a3d33442f.png

:r /etc/filesystems 可以把/etc/filesystems文件的内容复制到当前文件中

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

打开新文件或读入其他文件内容

a4c26d1e5885305701be709a3d33442f.png

替换文件内容

a4c26d1e5885305701be709a3d33442f.png

> % :

在整个文件内容中查找并替换。

> n.m :

在指定行数范围以内的文件内容中进行查找并替换

:5,15 sub

/initdefault/DEFAULT/g 将文档的5-15行的“initdefault”全部替换成“DEFAULT”

:% sub

/initderfault/bootdefault/g 将当前文件中的所有“initdefault”全部替换成“bootdefault”



推荐阅读
  • 俗话说得好,“工欲善其事,必先利其器”。这句话不仅强调了工具的重要性,也提醒我们在任何项目开始前,准备合适的工具至关重要。本文将介绍几款C语言编程中常用的工具,帮助初学者更好地选择适合自己学习和工作的编程环境。 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 目录一、salt-job管理#job存放数据目录#缓存时间设置#Others二、returns模块配置job数据入库#配置returns返回值信息#mysql安全设置#创建模块相关 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 本文详细介绍了Vim编辑器的三种主要模式及其常用命令,帮助用户更好地掌握这一强大的文本编辑工具。 ... [详细]
  • Linux环境下进程间通信:深入解析信号机制
    本文详细探讨了Linux系统中信号的生命周期,从信号生成到处理函数执行完毕的全过程,并介绍了信号编程中的注意事项和常见应用实例。通过分析信号在进程中的注册、注销及处理过程,帮助读者理解如何高效利用信号进行进程间通信。 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • 对于许多初学者而言,遇到总线错误(bus error)或段错误(segmentation fault/core dump)是极其令人困扰的。本文详细探讨了这两种错误的成因、表现形式及解决方法,并提供了实用的调试技巧。 ... [详细]
  • 本文深入探讨了UNIX/Linux系统中的进程间通信(IPC)机制,包括消息传递、同步和共享内存等。详细介绍了管道(Pipe)、有名管道(FIFO)、Posix和System V消息队列、互斥锁与条件变量、读写锁、信号量以及共享内存的使用方法和应用场景。 ... [详细]
  • java文本编辑器,java文本编辑器设计思路
    java文本编辑器,java文本编辑器设计思路 ... [详细]
  • 本文介绍如何在 Visual Studio Code 中使用 Jupyter Notebook 插件,包括创建、编辑和运行笔记本的基本操作。 ... [详细]
  • 本文介绍如何配置SecureCRT以正确显示Linux终端的颜色,并解决中文显示问题。通过简单的步骤设置,可以显著提升使用体验。 ... [详细]
  • Google排名优化-面向Google(Search Engine Friendly)的URL设计 ... [详细]
  • 本文详细探讨了Java命令行参数的概念、使用方法及在实际编程中的应用,包括如何通过命令行传递参数给Java程序,以及如何在Java程序中解析这些参数。 ... [详细]
  • WinSCP: 跨Windows与Linux系统的高效文件传输解决方案
    本文详细介绍了一款名为WinSCP的开源图形化SFTP客户端,该工具支持SSH协议,适用于Windows操作系统,能够实现与Linux系统之间的文件传输。对于从事嵌入式开发的技术人员来说,掌握WinSCP的使用方法将极大提高工作效率。 ... [详细]
author-avatar
曾经
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有