vim基本总结

ASCII可以将计算机存储的01转成我们认识的文字。在Linux中,绝大部分的配置文件都是以ASCII的纯文本形态存在。通过文本编辑器,可以实现对这些文本文件的更改。常风的文本编辑器有emacs, pico,nano,joevivimvi的升级版)等。那么为会么要学vi呢?

l 因为vi是内置编辑器,系统安装好就有了

l 很多软件的编辑接口都会主动呼叫vi(如crontab,visudo,edquota等指令)

l 简单易用

l Vim界面设计方便程序编辑

让我们来讲讲vim是怎么用的吧!^_^

Vi包括三种模式:命令模式

扩展命令模式(也叫末行模式)

插入模式

其关系如下

命令模式————–>插入模式

i: 在光标所在处插入

I: 在光标所在行行首插入

a: 在光标所在处后面插入

A: 在光标所在行的行尾插入

o: 在光标所在行的下方插入一行

O:在光标所在行的上方插入一行

插入模式—————>命令模式

ESC

命令模式—————>扩展命令模式

 输入: , ? , /

扩展命令模式—————->命令模式

按两次ESC键,或ENTER

扩展命令模式与插入模式相互不能直接进入,必须通过命令模式

扩展命令模式:

r filenmae 读文件内容到当前文件中

w filename 将当前文件的内容写入另一个文件

!command 执行命令

r!command 读入命令的输入

#: 具体第几行,2表示第二行

#,#: 从左侧#表示起始行,到右侧#表示结束行

#+#:从左侧#表示起始行,加上右侧#表示的行

Eg: 2+3

. : 当前行

$ :最后一行

% :全文

 

 

命令模式:

字符间跳转:

h : 左  

l :

k :

j :

当前页跳转:

H : 跳到页首

M : 跳到页中间

L : 跳到页尾

行首间跳转:

^ : 跳转到行首的第一个非空白字符

0 : 跳转到行首

$ : 跳转到行尾

命令模式翻屏:

Ctrl +f:向文件尾部翻一屏

Ctrl+b: 向文件首部翻一屏

字符编辑:

x :删除光标后的字符

x#: 删除光标起始位置的第#个字符

J: 删除当前行后的换行符

~: 转换字符大小写

替换命令:

r : 替换光标所在处的字符

R: 切换成replace模式

命令模式操作

d : 结合光标删除字符

d$: 删除光标所在处到行尾的内容

d^: 删除光标所在处到行首的非空白字符

d0:删除光标所在处到行首的内容

dd: 删除光标所在的行

dd#:多行删除

y : 结合光标键进行复制,再用p粘贴

y$: 复制光标所在处到行尾的内容

y^: 复制光标所在处到行首的非空白字符

y0: 复制光标所在处到行首的内容

yy: 复制整行

yy#: 复制多行

p: 如果缓存区存储的是整行,则粘贴在光标所在行的下一行;否则,则粘贴在光标所在处的后面

P: 如果缓存区存储的是整行,则粘贴在光标所在行的上一行;否则,则粘贴在光标所在处的前面

c: 修改(删除)后切换到插入模式

c$: 修改光标所在处到行尾的内容

c^:修改光标所在处到行首的非空白字符

c0:修改光标所在处到行首的内容

cc: 删除当前行,并输入新内容

cc#: 删除多行,并输入新内容

u : 撤消前面的操作

#u: 撤消前面的操作#

U:撤消光标落在这行后所做的所有操作

. : 重复前面的操作

n. : 重复前面的操作n

r : 重做前面的修改

 

 

插入模式:

Vim使用的步骤:

vim file 回车进入编辑器

进入编辑器后模式的切换,在本文前面已经总结过了^_^

vim 参数:

-b file 二进制打开文件

-m file 只读打开文件

-d file1 file2 比较多个文件

ex filevim -e 直接进入扩展命令模式

vim 退出方式:

在扩展命令模式下输入以下字符:

wq! :强制保存退出

wq :保存退出

q! :强制退出

q :退出不保存

x :保存退出

在命令模式下可以敲以下键:

ZZ :保存退出

ZQ :不保存退出

chmod +x file 给文件赋予执行权限

./file 运行文件

 

下面是演示和解说:

1

vim基本总结

2

vim基本总结

3

vim基本总结

图中的这些信息:

#!/bin/bash是必须指明的,bash代表该脚本使用的是bash脚本

echo “Welcom to linux”表示输出“Welcom to linux”到标准输出上

4

vim基本总结

5

vim基本总结

 

 

 

 

 

 

 

 

 

 


原创文章,作者:xxcj,如若转载,请注明出处:http://www.178linux.com/83882

(0)
xxcjxxcj
上一篇 2017-08-05
下一篇 2017-08-05

相关推荐

  • Linux运维利器之ClusterShell

    Via:http://blogread.cn/it/article/4573?f=wb 如果你有若干台数据库服务器,突然你想知道它们当前的即时负载情况,你会怎么办?挨个登录上去uptime一下?感觉有点傻,写个shell?浪费时间,直接用ClusterShell吧! ClusterShell的安装与配置     Clu…

    Linux干货 2015-05-12
  • rsyslog日志系统

    一、前言  什么是日志?    日志就是历史事件,按时间序列将发生的事件予以记录;日志记录信息记录的是事件的发生时间以及事件内容  Linux下记录日志的系统:    syslog:是CentOS 5.0系统上使用的日志系统,有两类日志,分别是syslogd、klogd;    …

    Linux干货 2015-06-15
  • 姗姗来迟的第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     [root@www /]# cp -r /etc/skel /home/tuser1 &&&nbsp…

    Linux干货 2016-11-30
  • redis-cli的一些有趣也很有用的功能

    redis-cli我们最常用的三个参数就是-h、-p、-a选项,分配用来指定连接的redis-server的host、port和登录密码。 通过redis-cli –help发现,redis-cli还提供了其他很多的参数和功能。 1)-x-x选项从标准输入(stdin)读取最后一个参数。 比如从管道中读取输入: echo -en “chen.qun” | r…

    Linux干货 2015-03-16
  • Linux发展史

    一、简单的说: 一个名叫Linus Torvalds的芬兰大学生想要了解Intel的新CPU386。他认为比较好的学习方法是自己编写一个操作系统的内核。出于这种目的,加上他对当时Unix 变种版本(即Minix)对于80386类机器的脆弱支持十分不满,他决定要开发出一个全功能的、支持POSIX标准的、类Unix的操作系统内核,该系统吸收了BSD和S…

    Linux干货 2016-10-20
  • N26-第三周作业

    N26-第三周作业 一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@promote ~]# who root     tty1         2017-03-10 22:36 lxk…

    Linux干货 2017-03-11