找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 543|回复: 0

Linux vi和vim编辑器案例实战

[复制链接]

31

主题

20

回帖

279

积分

管理员

积分
279
发表于 2024-1-13 10:06:48 | 显示全部楼层 |阅读模式
1.1  vi|vim编辑器实战

VI是一个命令行界面下的文本编辑工具,最早在1976年由Bill Joy开发,当时名字叫做ex。vi支持绝大多数操作系统(最早在BSD上发布),并且功能已经十分强大
1991年Bram Moolenaar基于vi进行改进,发布了vim,加入了对GUI的支持。

随着VIM更新发展,VIM已经不是普通意义上的文本编辑器,而是被广泛的作为在文本编辑、文本处理、代码开发等用途,Linux中主流的文本编辑器包括:VI、Vim、Sublime、Emacs、Light Table、Eclipse、Gedit等。

Vim强大的编辑能力中很大部分是来自于其普通模式命令。vim的设计理念是命令的组合。

  • 5dd”5表示总共5行,删除光标所在后的5行,包含光标行;
  • d$” $"代表行尾,删除到行尾的内容,包含光标;
  • 2yy”表示复制光标及后2行,包括光标行;
  • %d” %代表全部或者全局,%d表示删除文本所有的内容,也即是清空文档所有的内容。

VIM是一个主流开源的编辑器,其默认执行vim命令,会显示帮助乌干达贫困的孩子,如图1-1为vim与键盘键位功能对应关系:


图片1.png

图1-1 vim与键盘位置对应关系

1.2  VIM编辑器模式

Vim编辑器模式常用有三种,分别是:

  • 命令行模式;
  • 文本输入模式;
  • 末行模式。

vim是vi的升级版本,它是安装在Linux操作系统中的一个软件,官网为:www.vim.org

在Linux Shell终端下默认执行vim命令,按Enter键后:

  • 默认进入命令行模式;
  • 在命令行模式按i进入文本输入模式;
  • 按ESC进入命令行模式;
  • 按:进入末行模式。



1.3  
VIM编辑器必备

VIM编辑器最强大的功能,就在于内部命令及规则使用,如下为VIM编辑器最常用的语法及规则:

q 命令行模式:可以删除、复制、粘贴、撤销,可以切换到输入模式,输入模式跳转至命令行模式:按ESC键。
yy                                                 复制光标所在行;
nyy                                                复制n行;
3yy                                                复制3行;
p,P                                                粘贴;
yw                                                 复制光标所在的词组,不会复制标点符号;
3yw                                                复制三个词组;
u                                                  撤消上一次;  
U                                                  撤消当前所有;
dd                                                 删除整行;
ndd                     删除n行;
x                                                  删除一个字符;
u                                                  逐行撤销;
dw                                                 删除一个词组;      
a                                                从光标所在字符后一个位置开始录入;
A                                                从光标所在行的行尾开始录入;
i                                                从光标所在字符前一个位置开始录入;
I                                                从光标所在行的行首开始录入;
o                                                跳至光标所在行的下一行行首开始录入;
O                                                跳至光标所在行的上一行行首开始录入;
R                                                从光标所在位置开始替换;
q 末行模式主要功能包括:查找、替换、末行保存、退出等;
:w                                                保存;
:q                                                退出;   
:s/x/y                                  替换1行;
:wq                                 保存退出;
1,5s/x/y                                 替换1,5行;
:wq!                                    强制保存退出;           
1,$sx/y                                 从第一行到最后一行;
:q!                                                强制退出;
:x                                                保存;
/word                                        从前往后找,正向搜索;
?word                                        从后往前走,反向搜索;
:s/old/new/g                          将old替换为new,前提是光标一定要移到那一行;
:s/old/new                        将这一行中的第一次出现的old替换为new,只替换第一个;
:1,$s/old/new/g                    第一行到最后一行中的old替换为new;
:1,2,3s/old/new/g                      第一行第二行第三行中的old改为new;
vim +2 jfedu.txt                      打开jfedu.txt文件,并将光标定位在第二行;
vim +/string jfedu.txt       打开jfedu.txt文件,并搜索关键词。


1.4  本章小结

通过对本章内容的学习,读者对Linux操作系统引导有了进一步的理解,能够快速解决Linux启动过程中的故障,同时学习了CentOS6与CentOS7系统的区别,理解了TCP/IP协议及IP地址相关基础内容。

学会了Linux初学必备的16个Linux命令,能使用命令熟练的操作Linux系统,通过对VIM编辑器的深入学习,能够熟练编辑、修改系统中任意的文本及配置文件。对Linux系统的认识及操作有了更进一步的飞跃。

1.5  同步作业


1. 修改密码的命令默认为passwd,需要按Enter键两次,如何一条命令快速修改密码呢?

2. 企业服务器,某天发现系统访问很慢,需要查看系统内核日志,请写出查看系统内核日志的命令;

3. 如果在Linux系统/tmp/目录,快速创建1000个目录,目录名为:jfedu1、jfedu2、jfedu依次类推,不断增加;

4. Httpd.conf配置文件中存在很多以#号开头的行,请使用vim相关指令删除#开头的行。



懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表