不管是编辑配置文件,还是写代码都需要编辑文本,在linux下面不像在windows可以用那么多的可视化文本编辑器,处理文件的形式和windows并不相同。
在linux下,特别是在文本模式下文本的编辑一开始不习惯的话,不会像windows的那么直观和方便。linux上有很多的文本编辑器,emacs
, pico
,nano
, joe
, 和 vim
等等,这里主要介绍的是vim
。
在vim上站住脚
初次使用vim
,由于跟linux上跟windows并不一样,很容易出现自己无法退出vim
,而着急,这主要是对vim的逻辑和方法不了解造成的。
基本上 vim
共分为两种模式,『命令模式』和『编辑模式』。
- 命令模式
在用vim
命令进入时,处于命令模式下,可以使用vim
特有的命令对文本进行操作,从编辑模式按esc
键退出到命令模式。
- 编辑模式
在命令模式下,通常按i键可以进入编辑模式,在编辑模式下,光标可以移动,可以对文本进行编写,跟在windwos下使用文本编辑器类似。
编辑文件a.txt
,如果a.txt
不存在的话默认创建a.txt
,若存在则编辑当前文档。
vim a.txt
进入命令模式:
在命令模式下,操作方式和windows的编辑器是不一样的,他只能运行vim
特有的命令,后面会介绍一些vim
常用的命令,按i键,insert
的简写,可以进入编辑模式,编辑模式的操作习惯就比较相似了。
当我们完成了对文档的编辑以后,要保存文件变退出,需要先退到命令模式下,退到命令模式下的命令为esc
,在命令模式下输入:wq
,表示保存并退出。如果只是保存不退出的话:w
,记住要先输入:
。
在这里我们就能够对文本进行编辑了,不会因为对vim的操作而感到恐怖,先在vim上站住脚,vim
之所以会有这么多人推荐,是因为当我们熟悉了vim
的操作和命令以后,能够快速的进行文本编辑。
vim常见命令
多大程度上熟悉vim
的命令,决定了对文本的编辑速度,vim
的命令比较多,通过自己的练习和项目中的使用,会慢慢的熟悉这些命令。一种是对光标的定位,一种对文本的增删。
- 复制和粘贴
编辑代码复制和粘贴用的比较多,复制命令为 yy
,粘贴命令为pp
- 删除行
快速的删除一整行为:dd
- 光标快速跳转
w按照单词后移,快速后移。
一张图看够vim的命令:
如上给出了vim的命令图,命令比较多,可根据每个字母的猜出命令,如a
键也可以进入编辑模式,append
的意思,vim的命令是大小写敏感的,如DD
和dd
是不一样的操作。
在备注中有一点挺重要的,在命令前添加数字的意思为重复操作,
2yy #复制后面两行
2p # 重复粘贴两次
熟悉使用vim,我们会发现vim对文档的编辑有自己特殊的规则,熟悉了这些规则,对文本操作的速度会快于windows上的速度,不断的熟悉vim命令和用法,将事半功倍。