博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第四课 vi编辑器使用
阅读量:5239 次
发布时间:2019-06-14

本文共 2814 字,大约阅读时间需要 9 分钟。

vi编辑器

vi编辑器有三种模式

1)一般模式(光标移动、复制、粘贴、删除、撤销)
   hjkl、   ngg/G、    0、$、fx

    (←↓↑→)             行切换(ngg)      列切换(0,$, fx) 

        

   yy/nyy

复制当前行/复制当前行及以下n-1行

   p

粘贴

   dd/ndd、x

删除/删除当前行及以下n-1行、删除当前字符

   u

撤销

2)编辑模式(编辑文本)
   i        a        o

当前光标前一字符   当前光标下一字符        另起一行

由一般模式切换到编辑模式

3)命令行模式(查找和替换、保存退出文件)
   /pattern、  :%s/p1/p2/gc、      :wq

查找pattern                  将p1替换成p2(g全局征求同意)  保存退出

作业:
1)用vi 新建一个文件test2.txt,然后输入”welaome to the world of vi.”,并保存。
2)由于拼写错误,需要将其中的welaome中的a替换成c。
3)在上步的基础上,复制第一行到第二行和第三行。
4)在上步的基础上,删除第三行的全部内容。
5)在上步的基础上,搜索出现vi的地方。
6)在上步的基础上,将字符串vi替换成vim。
7)保存并退出。
一个编辑器具备的功能
1)打开文件、新建文件、保存文件
2)光标移动
3)文本编辑
4)(多行间|多列间)复制、粘贴、删除
5)查找和替换
//=========================================
vi编辑器的配置
cd /etc/vim
cp vimrc ~/.vimrc
cd ~
gedit .vimrc
在.vimrc中加入如下内容:
"关闭兼容功能
set nocompatible
"显示行号
set number
"编辑时 backspace 键设置为2个空格
set backspace=2
"编辑时 tab 键设置为4个空格
set tabstop=4
"设置自动对齐为4个空格
set shiftwidth=4
"搜索时不区分大小写
set ignorecase
"搜索时高亮显示
set hlsearch
//=========================================
vi编辑器有三种模式
1)一般模式(光标移动、复制、粘贴、删除)
2)编辑模式(编辑文本)
3)命令行模式(查找和替换)
注意:
1)当不知道处于何种模式时,按ESC键返回到一般模式。
2)wq(write quit)
3)i(insert)
//==================================================
i编辑器的使用
一个编辑器具备的功能
1)打开文件、新建文件、保存文件
2)光标移动
3)文本编辑
4)(多行间|多列间)复制、粘贴、删除
5)查找和替换
//=========================================
vi编辑器的配置
cd /etc/vim
cp vimrc ~/.vimrc
cd ~
gedit .vimrc
在.vimrc中加入如下内容:
"关闭兼容功能
set nocompatible
"显示行号
set number
"编辑时 backspace 键设置为2个空格
set backspace=2
"编辑时 tab 键设置为4个空格
set tabstop=4
"设置自动对齐为4个空格
set shiftwidth=4
"搜索时不区分大小写
set ignorecase
"搜索时高亮显示
set hlsearch
//=========================================
vi编辑器有三种模式
1)一般模式(光标移动、复制、粘贴、删除)
2)编辑模式(编辑文本)
3)命令行模式(查找和替换)
注意:
1)当不知道处于何种模式时,按ESC键返回到一般模式。
2)wq(write quit)
3)i(insert)
//==================================================

1.打开文件、新建文件、保存文件

 vi 文件名    如果文件存在,输入结束后,:wq保存并退出文件

    如果文件不存在,输入结束后,:wq就可以新建并保存文件
在编辑完成时,返回一般模式,
1)输入:w则保存文件,如果已经保存文件,输入:q则退出文件
2)直接输入:wq保存并退出
3)如果不想保存被修改的内容,则:q!强制退出。

2.从一般模式进入编辑模式

i(在光标前开始插入文本)

a在光标后开始插入文本
o(在当前行之下新开一行,并到行首)

3. 光标移动

在一般模式下,hjkl这四个按键就可以移动光标

h(左)
j(下)
k(上)
l(右)
快速的定位到某一行:
文件头、文件尾、指定某一行
ngg光标移至第n行的行首(n为数字),
    如1gg就跳到第一行的行首,就是文件头
    如2gg就跳到第二行的行首
    
G转至文件结尾
注意:ngg和G是在一般模式
在某一行如何快速定位到某一列
0(数字零)光标移至当前行行首
$光标移至当前行行末
fx搜索当前行中下一个出现字母x的地方
注意:0、$、fx是在一般模式
vi的难点:
1)vi操作之前,先判断一下当前是哪一种模式,再看光标所在位置。
当你不知道处于何种模式时,使用esc键返回到一般模式。
再看光标,难点在于移动光标,可以做到快速切换到某一行某一列。

4.文本复制、粘贴、删除、撤销

yy复制当前行(y:yank(复制))   

nyy复制当前行及其后的n-1行(n是数字)
使用P键来粘贴(p:paste)
dd  删除光标所在行(d:delete)
ndd 删除当前行及其后的n-1行(n是数字)
按u键来撤销上一步操作
x删除光标所在位置的字符
注意:
yy/nyy/dd/ndd/x/u都是在一般模式。
 

5. 查找和替换

/pattern 从光标开始处向文件尾搜索pattern,后按下n或N

注意:
n在同一个方向重复上一次搜索命令
N在反方向重复上一次搜索命令
n(N)来源于next
注意:
在/pattern之前先跳到第一行则进行全文件搜索。
:%s/p1/p2/g将文件中所有的p1均用p2替换
:%s/p1/p2/gc替换时需要确认
s:substitute替换
g:global全局
c:confirm确认
 
vi的难点:
1)vi操作之前,先判断一下当前是哪一种模式,再看光标所在位置。
当你不知道处于何种模式时,使用esc键返回到一般模式。
再看光标,难点在于移动光标,可以做到快速切换到某一行某一列。

 

转载于:https://www.cnblogs.com/freyluo/p/11044165.html

你可能感兴趣的文章
java实现哈弗曼树
查看>>
转:Web 测试的创作与调试技术
查看>>
转:apache 的mod-status
查看>>
转:基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
查看>>
结对编程博客
查看>>
Kendo MVVM 数据绑定(四) Disabled/Enabled
查看>>
python学习笔记3-列表
查看>>
程序的静态链接,动态链接和装载 (补充)
查看>>
关于本博客说明
查看>>
C++11 生产者消费者
查看>>
IO multiplexing 与 非阻塞网络编程
查看>>
hdu4105  Electric wave
查看>>
基于内容的图片检索CBIR(Content Based Image Retrieval)简介
查看>>
线程androidAndroid ConditionVariable的用法
查看>>
程序电脑VS2008 应用程序配置不正确,未能启动该应用程序。重新安装程序可以修复此问题。解决方法...
查看>>
设置类UIColor使用colorWithRed定义颜色
查看>>
文件语音识别Google语音识别学习札记 - Windows PC机上测试语音识别Strut2教程-java教程...
查看>>
μC/OS-III---I笔记13---中断管理
查看>>
:after,:before,content
查看>>
FTTB FTTC FTTH FTTO FSA
查看>>