linux java 编辑器_Java之美[从菜鸟到高手演练]之Linux下vi和vim编辑器的使用 | 学步园...

作者:二青

Vi是一个常用的linux下文本编辑器,基本所有的类Unix系统都会默认装有vi编辑器,所以只要学通了vi,则可以在任意linux上进行文本操作。在控制台里敲入"vi filename"即可启动vi编辑器,如果该file已经存在,则编辑已存在文件,如果不存在,则创建新的文件。vim是升级版的vi,除了具有vi的所有功能,还具备一些特有的功能,后面我们会一一介绍。

三种模式

一般模式,即默认进入的模式,在这个模式下,可以移动光标,进行删除以及复制粘贴文本。任何状态下按一下"ESC"键,即可使Vi进入一般模式。

命令行模式,在一般模式下,输入":","/","?"三者中的任意一个,都可以使vi进入命令行模式,在这个模式中,可以进行查找,替换,保存等操作。

编辑模式,在一般模式下,输入"a","A","i","I","o","O","r","R"中的任意一个,即可进入编辑模式,在编辑模式下可以进行文档的编辑,按ESC返回到一般模式。

8a64ef0c5e241f19559f35bde7f31e02.png

常用命令

模式

命令

解释

备注

一般模式

h 或者左箭头

光标向左移动一个字符

j  或者下箭头

光标向下移动一个字符

k 或者上箭头

光标向上移动一个字符

l  或者右箭头

光标向右移动一个字符

注意:如果想一次移动同一个方向上多行,可以使用:“数字h/j/k/l”来做,如:“10j”或者“10下箭头”表示向下移动10行

Ctrl + f

Page Down, 屏幕向下移动一页

常用

Ctrl + b

Page Up, 屏幕向上移动一页

常用

Ctrl + d

屏幕向下移动半页

Ctrl + u

屏幕向上移动半页

加号+

光标移动到非空格的下一行

减号-

光标移动到非空格的上一行

n+空格

n表示数字,表示光标向后移动n个字符

数字0或者Home键

移动到这一行最前面

常用

$或者End键

移动到这一行最后面

常用

H

移动到当前屏幕的最上一行最左边第一个字符

M

移动到当前屏幕的最中间一行最左边第一个字符

L

移动到当前屏幕的最下一行最左边第一个字符

G

移动到当前文件的最后一行

常用

nG

移动到当前文件的第n行

常用

gg

移动到当前文件的第一行

n + Enter

常用

查找和替换

/word

向下查找word字符串

常用

?word

向上查找word字符串

n

重复上一个查找

N

反向重复上一个查找

:n1,n2s/word1/word2/g

在n1行和n2行之间,将word1替换成word2

常用

:1,$s/word1/word2/g

从第一行到最后一行,将word1替换成word2

常用

:1,$s/word1/word2/gc

从第一行到最后一行,将word1替换成word2,

在替换前提示,需要确认

常用

删除、复制、粘贴

x,X

x向后删除,相当于Delete键,X向前删除,相当于Backspace键

常用

nx/nX

n为数字,表示连续向后/向前删除n个字符

dd

删除光标所在的那一整行

常用

ndd

删除光标所在行向下n行

常用

d1G

删除光标所在行到第1行所有数据

dG

删除光标所在行到最后一行所有数据

d$

删除光标所在处到该行最后一个字符

d0

删除光标所在处到该行最前面一个字符

yy

复制光标所在的一行

常用

nyy

复制光标所在的行的下面n行的数据

常用

y1G

复制光标所在行到第一行的数据

yG

复制光标所在行到最后一行的数据

y0

复制光标所在行光标到行首的所有字符

y$

复制光标所在行光标到行尾的所有字符

p,P

p将已复制的数据粘贴到光标所在行的下一行P将已复制的数据粘贴到光标所在行的上一行

常用

J

将光标所在行与下一行结合成一行

c

ncj

n为数字,表示连续向下删除n行

u

复原前一个操作,相当于撤销Ctrl + z

常用

Ctrl + r

重做上一个操作,相当于重做Ctrl + y

常用

.

小数点,重复前一个操作

常用

一般模式->编辑模式

i, I

i为从光标所在处插入,I为从所在行第一个非空字符处插入

常用

a, A

a为从光标所在处下一个字符处插入A为从所在行最后一个字符处插入

常用

o, O

o为从所在行下一行插入,O为从所在行上一行插入

常用

r, R

r替换光标所在的字符一次,R一直替换光标所在的字符直到ESC

常用

ESC

退出编辑模式回到一般模式

常用

一般模式->命令模式

:w

保存,相当于Ctrl + s

常用

:w!

若文件为只读,强制写入,能否成功要看权限

:q

离开vi

常用

:q!

不保存强制离开

常用

:wq

保存并且离开vi

常用

ZZ

若文件没有变化,直接离开,若有变化则保存后离开

:w[filename]

另存为

常用

:r[filename]

在光标所在处插入另一个文件的内容

:n1,n2 w [filename]

将n1行到n2行的内容保存到filename文件里

:! command

暂时离开vi到命令行模式下查看command的执行效果

:set nu

显示行号

:set nonu

取消行号

文件的保存和恢复

使用vim的时候,如果vim因一些不确定的因素非正常退出,而我们又有些未保存的数据,这时不用担心,vim提供文件恢复的功能,在我们打开一个文件的时候,同时会有一个filename.swp文件,这个文件里记录了我们队原文件的修改记录,如果vim非正常退出,当我们再次打开原文件时,vim会做出提示如下:

843dd7fe95fba428ca9158ad2c367919.png

O:表示以只读方式打开

E:表示正常打开文件进行编译,不载入.swp文件里暂存的数据

R:表示加载暂存的数据,恢复到上一个状态

D:删掉暂存文件

Q:直接退出

A:忽略,和Q类似

vim特色功能

1. vim具有行号,我们可以设置vim的行号的显示,只需要使用:set nu和:set nonu进行行号的显示与取消即可。

2. vim具有颜色高亮显示功能,对于常用的特殊格式的配置文件,

3. 块选择

块选择可以让我们一次性操作一块文件,而非一行。

v

字符选择,选择光标经过的地方

V

行选择,选择光标经过的行

Ctrl + v

块选择,选择光标经过的矩形

y

复制上述方法选择的数据

d

删除上述方法选择的数据

我们实践一下这个块选择的功能,新建2个文件ip1, ip2, ip1里存放

192.168.1.111 aaaa hello

192.168.1.112 bbbb world

如果我们想实现直接将aaaa,bbbb复制到hello和world后面怎么 做?请看下面的步骤:

1. 在命令行模式下按Ctrl + v,移动光标进行选择。

52f284df1638c5d66fa34df1d6764232.png

按下y,将光标移动到hello的后面再按p就实现了。

396b7a5727fb8d4a3668910613e78176.png

4. 多文件编辑

vim允许我们进行多个文件同时编辑,我们新建2个文件ip1, ip2, ip1里存放:

192.168.1.111 aaaa

192.168.1.112 bbbb

ip2里存放:

hello

world

如果我们想将ip1里的内容复制到ip2里,又不想打开多个窗口的话,那就采用多文件编辑的功能。

a. 用命令vim ip1 ip2同时打开两个文件

b. 用:files查看打开的文件

c. 输入2yy复制2行数据

d. 在一般模式下,输入:n切换到第二个文件

按G到最后一行,再按p进行粘贴,就好了。

:n

编辑下一个文件

:N

编辑上一个文件

:files

查看打开的文件

5. 多窗口编辑

当我们想在编辑文件的时候,参考另一个文件,要么采用上一条说的多文件编辑,但是无法方便的对照,要么就采用下面的方法:多窗口编辑。在一般模式下输入:sp filename,filename可以不加,控制台就会分割成两个,继续:sp filename就会继续添加

f459ea732f1d985ddeca629ae3102a68.png

按下Ctrl+w+j/向下键,光标移动到下方的窗口,按Ctrl+w+k/向上键,光标移动到上方的窗口。按下Ctrl+w+q离开当前窗口。

6. 对vim进行配置

vim可以对我们修改记录进行保存,这也是为什么当我们编辑完一个文件后,下一次打开时光标会停在之前退出时的位置的原因。这些记录保存在~/.viminfo文件里。除此之外,当我们想对vim进行属性的设置,我们可以编辑~/.vimrc文件。vim有很多属性,在命令行模式下输入:set all可以查看。vimrc文件默认不存在,我们需要自己进行创建,之后,如果我们添加:

set nu

到~/.vimrc文件里,则以后每次打开文件,都会显示行号。如果这个文件里的属性设置有问题,则每次打开任何文件都会提示错误信息,直到修改好为止。

关于linux下vim的使用暂时就介绍到这里,学习这章内容最重要的就是练习、实践,因此希望学习的朋友自己装一台linux主机,多多练习就会掌握好。

欢迎联系作者:

作者:二青

参考文献:

《鸟哥的Linux私房菜》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值