vim命令详解 vim常用命令详解

宠物知识 2024-07-24 09:49:54

如何使用Vim编辑多个文件

下面开始切换编辑的文件:

命令: vim file1 file2 ...

vim命令详解 vim常用命令详解vim命令详解 vim常用命令详解


以下以test1 和 test2 测试为例:

首先打开要编辑的文件:

输入命令:

:w

切换前先保存当前文件,“w”表示 write

输入切换命令:

:n te如果识别错误执行如下代码:st2

注意:n 后面存在 空格 ,如果“:n”后不加任何参数表示切换到下一个文件

编辑完成后使用:

:q 或者 :q! 命令退出文件编辑。

其它指令:

1、 “:e filename”与“:n filename” 用法相同

2、 “:n #” 交替编辑近处理过的两个文件,类似alt+tab的功能

3、 “:e! Filename” 放弃当前的修改,并强制转到指定文件

4、 “:q!” 强制退出vim编辑器

Linux系统中如何创建文件?常用的8种方法!

2、使用ls命令

1、使用重定向符>

使用“>”创建空文件,且不输入文件内容

使用ls命令创建空文件,且不输入文件内容

3、使用touch命令创建文件

若所创建的文件不存在,则创建该文件; 且不允许输入文件内容

4、使用echo命令

echo "选填" > isTester.ini

若文件不存在,则创建文件;

若文件存在,则覆盖文件;

若文件不存在,使用>>创建文件并追加内容;

5、使用cp命令文件

6、vi/vim命令创建文件

使用vi或vim命令创建文件并编辑文件

在Linux系统中,一切皆文件,Windows系统可以直接右键新建,然而Linux则是需要通过执行命令来完成的,高效创建文件无疑是个非常重要的能力,如果使用得当,会节省你大量工作时间,在Linux系统下创建文件的这8种方法,你都知道哪些?

种:重定向符号>

通常重定向符号可以创建一个0kb的空文件,可用于重定向命令的输出到一个新文件中,在无命令时使用重定向符号,会创建一个文件。

但它不允许你在创建文件时向其中输入任何文本。但它对于不是很勤劳的管理员是非常简单有用的,只需要输入重定向符后面跟着你想要的文件名。

第二种:touch命令

用于将每个文件的访问和修改时间更新为当前时间,如果指定的文件名不存在,将会创建一个新的文件。

touch不允许在创建文件的同时向其中输入一些文本,它默认创建一个0KB的空文件。

第三种:echo命令

echo内置于大多数的作系统中。它常用于脚本、批处理文件,以及作为插入文本的单个命令的一部分。

它允许在创建一个文件时就向其中输入一些文本。当然也允许在之后向其中输入一些文本

第四种:pr5. 文本对象intf命令

用法与echo相同。

第五种:cat命令

cat是在类Unix系统中常使用的命令之一。它提供了三个与文本文件相关的功能:显示一个文件的内容、组合多个文件的内容到一个输出以及创建一个新的文件。(如果cat命令后如果不带任何文件的话,下面的命令在回车后也不会立刻结束,回车后的作可以按Ctrl-C或Ctrl-D来结束)

第六种:vi/vim命令

是一个向上兼容vi的文本编辑器。它通常用来编辑所有种类的纯文本。在编辑程序时特别有用,vim中有很多功能可以用于编辑单个文件。

第七种:nano命令

nano是一个小且用户友好的编辑器,它了pico的外观及优点,并且是一个自由软件,它添加了pico缺乏的一系列特性,像是打开多个文件、逐行滚动、撤销/重做、语法高亮、行号等等。

第八种:head命令

用于输出一个文件开头部分,默认会打印一个文件前10行,如果有多个文件,则每个文件前都会有一个标题,用于表示文件名。

如何优雅地使用 Vim

普通进入编辑,aAioO等等好多字母都可以,编辑方式不同而已

首先我们要知道,Vim是一个需要学习的编辑器,如果只是使用而不进行专门的学习的话,是很难理解到Vim的精髓的。同样,Vim也是需要练习的编辑器,如果只是学习而没有实践的话,那也是浪费时间(除非你记忆力相当好,以后使用可以回忆起来,但是Vim的命令真心太多了~)。

既然要很优雅的使用Vim编辑器,自然需要对Vim有相当的了解,这里就简单的列举几个我认为Vimer需要理解和掌握的概念。

# 注1:本文的前提是读者已经会基本的Vim命令,如果是刚刚接触Vim,收藏一下就可以了,没必要现在看。

# 注2:这不是一个详细的教程,只是简单的指出Vim中比较重要的概念和命令。

# 注3:为了表达的需要,所有的实例都是用英文,光标的位置使用星号,如下

# 注4:[N] [I] [V] [C],表示在这种模式下面使用这个命令。下文会有讲解。

# 注5:写着写着真心累了,然后就偷懒了。。。

0. 键盘设置

1. 编辑器模式

你需要明白这么几个模式:

浏览文本的时候,一般使用Normal模式

编辑文本的时候,一般使用Insert模式

处理多行文本的时cat表示串联,在Linux经常用于读取一个文件中的数据。候,一般使用Visual模式

更高级的功能和设置的时候,一般使用Command-Line模式

2. 常用的编辑命令

你需要明白下面的基本编辑命令:

## 下面简单的列举常用的命令,不是很全,可以自己看相关书籍或者文档

i a/A s/S o/O # [N]这些是进入Insert模式使用的命令,还有很多,列出常用的

r/R # [N]这两个是替换字符的命令

d x/X # [N]这是删除命令

u C-r # [N]这是undo redo

y p/P # [N]这是粘贴

... 此处省略上百字 ...

## 下面的命令其实是很多命令的组合

dd # 删除一行

yy # 一行

C # 删除本行光标后面的文字,然后进入Insert模式

... 此处省略上百字 ...

## 既然要优雅,编辑器自带的东西是远远不够的,你需要:

1. 寻找各种插件来满足自己的寻求

2. 自己定义按键,定义函数,设置不同的编辑器参数

... 这一步将需要花费你一辈子的时间 ...

3. 光标移动与视图移动

目前,Vim是我见过的位置移动灵活的编辑器。同样,要想优雅的使用Vim,深入理解位置移动和视图移动是必不可少。

## 首先是基本的移动命令

hjkl # 基本的移动命令

C-d/u C-f/b C-e/y # 滚屏命令

zz zt zb # 非常好用的视图移动

H M L # 光标单屏移动

gg G # 文本开头,文本结尾,3gg是移动到第三行

0 $ # 行首行尾

## 然后是更加的定位级别的命令

f + 字符 # 搜索一行中的字符,然后移动,还有F、t、T命令

/ + 更多字符 # 全文搜索然后移动,还有?命令

模式匹配 # 这个是更高基本的了

4. 重复

前面只是基本的编辑,这个才是真正的王道啊!这里面有无穷的优雅,一定要灵活,不要去记忆什么东西。

## 几乎任何命令和使用重复的功能

如果你要滚屏然后C-f C-f C-f的慢慢的滚,如果使用重复3 C-f就OK了;

如果你使用dd删除,如果删除5行,使用5 dd就OK了;

如果使用p粘贴,要粘贴3次,3p就OK了;

3fe 5j 7C-u

好吧,又一个杀手级别的功能,理解了文本对象以及广义的文本对象,你的编辑速度会得到N倍的提升。

## 狭义的文本对象

# 如果按下 diw,Vimer就会删除

# 如果按下 das,整个句子都会删除

# 好吧,大概理解了iw指的是一个单词,as值得是一个句子,更多的有aw is ab a[ a} i' a" 好多啊。。。

## 广义的文本对象

1. 我们要明白当前光标是一个位置。

2. 我们会使用位置移动命令比如f3.

=> 那么两个位置就形成了一个文本对象:

所以,试试 3dfe d3fe dgg dG这些命令就伟大了!

对,Vim是可以同时编辑多个文件的,这个不赘述了。

要想优雅,必须要多窗口编辑啊,你要知道如何分窗口,如何在窗口之间快速的移动。

8. 配置与插件

很好,终于到了配置级别的了。

显示行数?可以!

自动保存?可以!

自动补全?自动缩进?更好的色彩?。。。。

简而言之:你想要的都在这里!

9. 更多功能

多剪贴板 # 内容到不同的粘贴板

书签 # 实现快速调整

模式匹配

... 省略无穷个字 ...

10. 一些废话

a. Vim需要系统的学习才能真正的体会它的强大。

b. Vim书籍,《学习Vi和vim编辑器(影印版)》,Vim的书籍不多,来一本看一本吧,看一本之后,其他书籍一两个小时就可以看完。

c. 无论你是否喜欢Emacs,你都要学习使用它。Vim影响你如何在Vim里面编辑,Emacs影响你如何在所有程序里面编辑。 # 如果你不接触linux或者mac,emacs或许可以不学

现在可以回答你的问题,如何优雅的使用Vim:

把Vim设置为系统的默认编辑器,把Caps Lock换成ESC

系统的学习Vim,有时间就通读Vim帮助文档

使用Vim一两年后学习使用Emacs编辑器,然后继续使用Vim

Linux基础-vim模式

如果你打算优雅的使用Vim,那么Caps lock按键是必须要映射到ESC按键,然后把Vim设置为默认编辑器,不然一切无从谈起。

1.1普通模式用的编辑器命令,比如移动光标,删除文本等等。这也是 Vim 启动后的默认模式,在普通模式中,有很多方法可以进入插入模式。比较普通的方式是按 a(append/追加)键或者 i(insert/插入)键。

1.2插入模式,按键会向文本缓冲中插入文本。编辑器编辑过程中一直保持这个模式。在普通模式下使用下面的键将进入插入模式,并可以从相应的位置开始输入

i:在当前光标处进行编辑

I:在行首插入

A:在行末插入

a:在光标后插入编辑

o:在当前行后插入新行

O:在当前行前插入新行

cw:替换从光标所在位置后到一个单词结尾的字符

注意:注意每次要先回到普通模式才能切换成以不同的方式进入插入模式

在插入模式中,可以按 ESC 键回到普通模式。

1.3可视模式

这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim 的"文本对象"也能和移动命令一样用在这个模式中。

1.4选择模式

这个模式和无模式编辑器的行为比较相似(Windows 标准文本控件的方式)。这个模式中,可以用鼠标或者光标键高亮选择文本,不过输入任何字符的话,Vim 会用这个字符替换选择的高亮文本块,并且自动进入插入模式。

1.5命令行模式

在命令行模式中可以输入会被解释成并执行的文本。例如执行命令(:键),搜索(/和?键)或者过滤命令(!键)。在命令执行之后,Vim 返回到命令行模式之前的模式,通常是普通模式。

进入命令行模式后输入 :e 回车 同样可以打开相应文件。

:q! 强啥叫清屏呀,vim 显示的是当前编辑的文件,怎么可能清掉。制退出,不保存

:q 退出

:wq 保存并退出

:w 文件路径 另存为

:seas 文件路径 另存为

:x 保存并退出

1.6Ex模式

这和命令行模式比较相似,在使用 :visual 命令离开 Ex 模式前,可以一次执行多条命令。

vim 启动进入普通模式,当处于插入模式或命令行模式时只需要按 Esc 或者 Ctrl+ [ 即可进入普通模式。普通模式中按 i(插入)或 a(附加)键都可以进入插入模式,普通模式中按 : 进入命令行模式。命令行模式中输入 wq 回车后保存并退出 vim。

文档加密

vim -x file1

输入您的密码,确认密码,下一次打开时,vim 就会要求你输入密码

linux vi命令的使用方法

7. 多窗口

一般模式常用作

【h(或向左方向键)】 光标左移一个字符

【j(或向下方向键)】 光标下移一个字符

【k(或向上方向键)】 光标上移一个字符

【l(或向右方向键)】 光标右移一个字符

【[0]或[Home]】 光标移动到当前行的前面

【[$]或[End]】 光标移动到当前行的末尾

【G】 光标移动到文件的一行(个字符处)

【nG】 n为数字(下同),移动到当前文件中第n行

【gg】 移动到文件的行,相当于"1G"

【n[Enter]】 光标向下移动n行

【延展阅读】

Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便。vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本、C语言程序编辑等功能,可以作为程序编辑器。

(二)为什么要学习vi/vim?

首先所有的Linux发行版系统上都会默认内置vi编辑器,而不一定带有其他文本编辑器,非常通用;其次,很多软件的编辑接口都会默认调用vi;第三,vi具有程序编辑的能力;,vi程序简单,编辑速度相当快速。

(三)vim配置文件

vim的配置文件为/etc/vimrc,但一般不建议直接修改这个文件,而是在用户根目录下创建一个新的隐藏文件:

vim ~/.vimrc

然后编辑这个文件,常用的配置如下:

bash

"双引号后面的内容为注释

set nu "显示行号

set hlsearch 若文件存在,使用>>追加文件内容;"查找的字符串反白显示

set backspace=2 "可随时用退格键进行删除

set showmode "在左下角显示模式

set bg=dark "显示不同的底色,还可以为light

syntax on "语法检验,颜色显示

参考资料

Vim中如何设置语法高亮和行号

工具/材料

Vim编辑器

01

首先我们用vim命令d. 我对emacs和vim的看法:都是神器,都值得掌握!到你会发现无论哪个都无法满足你,但哪个都无法舍弃。个人感觉,对程序员而言,Emacs的对职业生涯的影响力更大。打开一个文档,如下图所示

02

接下来进入到文档以后我们会看到并没有语法高亮和行号样式,如下图所示

03

然后我们进入Vim的命令模式,在下方输入syntax on命令设置语法高亮,如下图所示

然后输入set number命令给文档开启行号,如下图所示

设置完了以后我们保存退出文档,然后在进来的话就会看到设置的效果都没有了,如下图所示

06

接下来我们用vim打开vimrc文档,如下图所示,这个文档是所有的vim样式文档

07

打开vimrc文档以后我们按i进入编辑模式,输入刚才的syntax on和set number命令,然后保存退出,如下图所示

08

我们在重新通过vim进入文档6. 多文本编辑就会看到现在就自动有语法高亮和行号了,如下图所示

vim的“\n”和“\r”有什么区别?

set ruler "在下方一行显示状态

在vim中,

是换行,

是回车。 表示的是回车,也就是苹果公司生产的电脑的作系统内默认的换行符。

在windows作系统中,默认的是

;在unix/linux作系统中默认的是

;这两个系统只需要在vi/vim中输入命令:%s/

//g或者:%s/[ctrl-v][ctrl-m]//g ====== :%s/^M//g,两者的效果是一样的。

注意,这里的ctrl-v和ctrl-m是你键盘上的按键,而不是直接打输入字母上去,所以显示出来的是:%s/^M//作为软件测试工程师,不可避免需要作到 Linux 系统,vi/vim 是 Linux 系统内置的不可或缺的文本编辑命令,VIM 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。g。

vim中一些常见命令:vim -c cmd file: 在打开文件前,先执行指定的命令;vim -r file: 恢复上次异常退出的文件;vim -R file: 以只读的方式打开文件,但可以强制保存;vim -M file: 以只读的方式打开文件,不可以强制保存; vim -y num file: 将编辑窗口的大小设为num行;vim + file: 从文件的末尾开始;vim +num file: 从第num行开始;vim +/string file: 打开file,并将光标停留在个找到的string上;vim --remote file: 用已有的vim进程打开指定的文件。

LINUX作系统VIM的安装和配置

工具/材料 LINUX作系统(ubuntu/Centos)

在命令行敲入“vi”后按"tab"键,可以看到目前系统中只安装了vi和vim.tiny。

可以发现,系统默认是syntax on没有安装vim的,因此就需要我们手动进行安装。

ubuntu系统:

普通用户下输入命令:sudo apt-get install vim-gtk

centos系统:

普通用户下输入命令:yum -y install vim

图片:wq! 强制保存并退出以ubuntu为例

这里,输入“y”后,回车。

之后不需要任何作,等待安装完成。

安装完成之后,在命令行敲入vi,按“tab”键。

可以看到,已经有vim命令的存在。

安装成功。

在命令行下,输入命令:sudo vim /etc/vim/vimrc

必须加上sudo,否则你是没有权限编辑vimrc的。

在这个文件中,会有这么一句:

意思是语法高亮,如果您的被注释掉了,请“让它出来”。就像下图所示

图中就是一个简单的配置方案,保存之后,配置完毕。

我们来编写一个小程序,如下图所示,可以看出,界面已经比较美观了。

特别提示

centos、Fedora与Ubuntu的作类似,只是需要采用yum进行安装调试。

vi 和 vim 的区别?

I am a Vimer and Emacser, they are both great tool.

vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。

命令模式/一般模式:

刚刚启动 vi/vim,则进入一般模式,可以移动光标、粘贴、删除字符等。此状态下键盘输入会被识别为命令作,常用到的包括 i(切换到插入模式),x(删除当前光标所在字符),:(切换到命令行模式)。

插入模式:

在一般模式下按下键盘【i, I, o, O, a, A】进入插入模式,屏幕的左下方会出现【--INSERT--】的字样,表示当前模式下,用户可以编辑修改文本的内容。按下【Esc】则退出编辑模式。

末行模式/指令命令模式:

在一般模式下按下键盘【: / ?】任意一个,光标移动到下面一行,进入末行模式。可以查找数据、替换、可保存文件、退出 vi、显示行号等作。

1、vi lemon.txt:

打开 lemon.txt 文件进入一般模式;当 lemon.txt 不存在则会创建 lemon.txt 文件,保存退出后,则新建成功。

2、移动光标:

进入一般模式后,可在键盘输入以下,移动光标位置。

[Ctrl]+[f]:光标向下移动一页。

[Ctrl]+[b]:光标向上移动一页。

0:移动到光标所在这一行的前面字符处。

$:移动到光标所在这一行的面字符处。

[PgUp]/[PgDn]/[Home]/[End]按键:从当前光标处往上、下、左、右移动。

G:移动到这个文件的一行。

g:移动到这个文件的行。

N[Enter]:N 为数字,光标向下移动 N 行。

3、删除、和粘贴:

进入一般模式后,可在键盘输入以下,实现删除、、粘贴。

x,X:在一行字中,x 为向后删除一个字符(相当于[Del]键),X 为向前删除一个字符(相当于[Backspace])。

dd:删除光标所在的一整行。

ndd:删除光标所在的向下 n 行。

yy:光标所在的一行。

nyy:光标所在的向下 n 行。

p,P:p 为将已的内容在光标的下一行粘贴,P 则为粘贴在光标的上一行。

4、一般模式切换到插入模式:

进入一般模式后,可在键盘输入以下,切换到插入模式,进行文件编辑作。

i,I:进入插入模式,i 为从目前光标所在处插入。I 为在目前所在行的个非空格字符处开始插入。

a,A:进入插入模式。a 为从目前光标所在处的下一个字符处开始插入。A 为从所在行的一个字符处开始插入。

5、查找和替换:

按 vi 进入文件后,可进行以下作进行查找和替换

/lemon:向下寻找一个名称为 lemon 的字符串。

?lemon:向上寻找一个名称为 lemon 的字符串。

:n1,n2s/lemon1/lemon2/g:在第 n1 行和 n2 行之间寻找 lemon1 这个字符串,并且将其替换为 lemon2.

:1,$s/lemon1/lemon2/g:从行到一行寻找 lemon1 这个字符串,并且将其替换为 lemon2.

:1,$s/lemon1/lemon2/gc:从行到一行寻找 lemon1 这个字符串,并且将其替换为 lemon2.且在替换前显示提示字符给用户确认是否需要替换。

6、编辑数据后切换到末行模式:

进行文件编辑后,按键盘【Esc】退出编辑模式,并可以进行以下作,

:w:将编辑的数据写入到硬盘中。

:q:不保存退出 vi;后面加!为强制退出 vi。

:## 上面的命令基本可以完成任务了,但是想要优雅,还不过,你需要知道简洁的命令wq:保存后退出 vi。后面加!为强制保存后退出 vi。

VIM 是 vi 的升级版本,除了兼容 vi 的所有指令,VIM 还具有一些新的特性,主要体现在:

多级撤销

我们知道在 vi 里,按 u 只能撤消上次命令,而在 VIM 里可以无限制的撤消。

易用性

vi 只能运行于 unix 中,而 VIM 不仅可以运行于 unix,windows ,mac 等多作平台。

语法加亮

VIM 可以用不同的颜色加亮显示代码。

可视化作

VIM 不仅可以在终端运行,也可以运行于 x window、 mac os、 windows。

怎么让vim 显示输入的命令

tag和文件跳转

1、vim显示历史命令,先按q,再按:

q发挥自己的想象力吧,Vim的重复无处不在,比如下面的例子::

2、vim搜索历史命令,行按q,再按/

q/

3、vim定位历史命令,和vim标准模式类似,按j 上按k下。

4、vim执行历史命令,直接按enter键

在linux下的VIM中替换命令的格式是什么?各部分的含义是什么?

在linux下的VIM中替换命令的格式是;[range]s/pattern/string/[c,e,g,i]

range:指的是范围

s(search):表示搜索

pattern:就是要被替换的字符串

string:将替换pattern

C:每次替换前询问

g(globe):不询问,将做整行替换

e(error):不显示error

i:(ignore)不分大小写

:s/p1/p2/g

用p2替换p1

:n1,n2s/p1/File1 file2 表示同时编辑 file1 和 file2这两个文件,系统默认先编辑个文件,即file1。p2/g

将n1到n205行中的p1用p2替换

版权声明:本文内容由互联。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发 a13828211729@163.com 邮箱删除。