vim编辑器

                                                                       vi:Visueral Interface 文本编辑器

 文本编辑种类

行编辑器:sed

全屏编辑器:nano,vi

VIM -Vi IMprowed

使用

 vim:模式化的编辑

 基本模式:

编辑模式:命令模式

 输入模式:

末行模式:

内置的命令行接口

打开文件:

# vim [OPTION]…. FILE…..

 +#:打开文件后,直接让光标处于第#行的行首

vim的编辑命令:

 字符编辑

x: 删除光标处的字符;

#x: 删除光标处起始的#个字符;

 xp: 交换光标所在处的字符及其后面字符的位置;

 替换命令(r, replace)

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

 删除命令:

d: 删除命令,可结合光标跳转字符,实现范围删除;

dd: 删除光标所在的行;

#dd:多行删除;

 粘贴命令(p, put, paste)

p:缓冲区存的如果为整行,则粘贴当前光标所在行的下方;否则,则粘贴至当前光标所在处的后面;

P:缓冲区存的如果为整行,则粘贴当前光标所在行的上方;否则,则粘贴至当前光标所在处的前面;

 复制命令(y, yank)

y: 复制,工作行为相似于d命令;

 yy:复制行

#yy: 复制多行; 

改变命令(c, change)

c: 修改

编辑模式 –> 输入模式

cc:删除并输入新内容

#cc: 

其它编辑操作

 可视化模式:

v: 按字符选定

V:按行行定

 Note:经常结合编辑命令;

d, c, y

 撤消此前的编辑:

u(undo):撤消此前的操作;

#u: 撤消指定次数的操作;

 撤消此前的撤消:

Ctrl+r

 重复前一个编辑操作:

. 翻屏操作:

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

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

 Ctrl+d: 向文件尾部翻半屏;

Ctrl+u:向文件首部翻半屏;

 vim自带的练习教程:

vim编辑器

j向下字符k向上一个字符l 向右移动一个字符h向左移动一个字符

b 向右移动一个单词

输入模式–>编辑模式

ESC

 编辑模式–>末行模式

:

末行模式–>编辑模式

ESC

 输入–>编辑–>末行

 退出文件:

:q! 不保存退出

:wq 保存退出

:x 保存退出

:wq! 强制保存退出

 编辑模式保存退出:ZZ

  单词间移动:

w: 下一个单词词首

e: 当前单词或下一个单词词尾

b: 当前单词或前一个单词词首

#{w|e|b}:

 行内移动:

^: 行首第一个非空白字符

0:绝对行首

$: 绝对行尾

dd: 删除光标所在行

d: 删除命令

p: paste, 粘贴

y: yank, 复制

撤消此前的撤消操作:Ctrl+r

翻屏:

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

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

测试表达式的类别:

数值比较

字符串测试

文件测试:

存在性测试

-a FILE

-e FILE: 文件存在性测试,存在为真,否则为假;

存在性及类别测试

-b FILE:是否存在且为块设备文件;

-c FILE:是否存在且为字符设备文件;

-d FILE:是否存在且为目录文件;

-f FILE:是否存在且为普通文件;

-h FILE -L FILE:存在且为符号链接文件;

-p FILE:是否存在且为命名管道文件;

-S FILE:是否存在且为套接字文件;

文件权限测试:

-r FILE:是否存在且可读

-w FILE: 是否存在且可写

-x FILE: 是否存在且可执行

文件特殊权限测试:

-g FILE:是否存在且拥有sgid权限;

-u FILE:是否存在且拥有suid权限;

-k FILE:是否存在且拥有sticky权限;

文件大小测试:

-s FILE: 是否存且非空;

文件是否打开:

-t fd: fd表示文件描述符是否已经打开且与某终端相关

-N FILE:文件自动上一次被读取之后是否被修改过;

-O FILE:当前有效用户是否为文件属主;

-G FILE:当前有效用户是否为文件属组;

 双目测试:

FILE1 -ef FILE2: FILE1FILE2是否指向同一个设备上的相同inode

 FILE1 -nt FILE2: FILE1是否新于FILE2;

FILE1 -ot FILE2: FILE1是否旧于FILE2

 组合测试条件:

逻辑运算:

第一种方式:

COMMAND1 && COMMAND2

COMMAND1 || COMMAND2

! COMMAND

[ -e FILE ] && [ -r FILE ]

第二种方式:

EXPRESSION1 -a EXPRESSION2

EXPRESSION1 -o EXPRESSION2

! EXPRESSION

 必须使用测试命令进行;

 

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

(0)
kangkang
上一篇 2015-12-18 16:46
下一篇 2015-12-19 19:17

相关推荐

  • 第一周作业

    计算机的组成以CPU/存储/IO设备 硬件层次 CPU以完成运算和控制 存储包含 I/O设备为连接计算机的多样性输入输出设备(包含打印机/显示器等) 软件层次 以机器语言为基础,到符合使用的应用程序, Linux的发行版本 RedHat(商业组织维护版本,有enterprise version)-CentOS-主要以此为主 Debian(community)…

    Linux干货 2016-12-04
  • httpd的特性(初阶应用)

    httpd的特性   httpd常用配置/etc/httpd/conf/httpd.conf 1、修改监听的IP和PORT Listen [IP:]PORT (1)省略IP表示为0.0.0.0 (2)Listen指令可重复多次 Listen 8080 Listen 80 (3)先修改监听的socket,重启服务后方可生效 2、持久连续 KeepAl…

    2017-09-30
  • 文件系统层次标准FHS

    FHS针对目录树架构仅定义出三层目录下应该放置哪些数据,分别是下面三个目录: /(根目录):与开机系统有关; /usr(unix software resource):与软件安装执行有关; /var(variable):与系统运作过程有关。   下面分别对上述三层目录进行详细的阐述。   (1) /(根目录)   根目录是整个系统最重要的一个目录,…

    Linux干货 2016-10-19
  • 请罗列Linux发行版的基础目录名称命名法则及功用规定

    Linux文件系统 <逻辑视图>     根文件系统(rootfs):         root filesystem     LSB,FHS:(FileSystem Heirache Standard)         /bo…

    Linux干货 2016-10-30
  • python内建函数

    # Python内建函数(部分)– 标识id返回对象的唯一标识,CPython返回内存地址– 哈希hash()返回一个对象的哈希值– 类型type()返回对象类型– 类型转换float() int() bin() hex() oct() bool() list() tuple() dict()set() com…

    Linux干货 2017-10-09
  • 第十五周作业

    温故知新 1、总结sed和awk的详细用法 sed [OPTION]… ‘script’ [input-file] …script:地址定界编辑命令 常用选项:-n:不输出模式空间中的内容至屏幕;-e script, –expression=script:多点编辑;-f /PATH/TO/SED_S…

    Linux干货 2017-12-04