Linux之Vim编辑器使用
vim文本编辑器用于建立 编辑 显示文本文件,vim没有菜单,只有命令
在windows 平台下可使用gvim进行编写
Vim三种工作模式:

常有命令:
1.INSERT插入命令
i 在光标前插入 I 在当前行首插入
a 在光标后插入 A在当前行尾插入
o 在当前行插入一行 O 在当前行上插入一行
2.光标定位命令
h 左移一个字符 (等同于方向键<---) H (head) 移至屏幕上端——第一行开头
j 移到下一行 (等同于上方向键) M (middle) 移至屏幕中间——中间行开头
k 移到上一行 (等同于下方向键) L (line) 移至屏幕下端——最后行开头
l 右移一个字符 (等同于方向键--->)
$ 移至行尾
移至行首(数字零)
gg 光标到第一行 nG 光标到第 n 行 2G 到第二行等于 :2
G 光标到最后一行 :n 光标到第 n 行
3.命令模式进入——编辑模式
: 命令 <Enter>回车
效果:执行后,制动回到命令模式
例如:显示当前文件的行号 :set nu 取消行号 :set nonu
4.删除命令
x 删除光标所在处字符
nx 删除光标所在处后n个字符
dd 删除当前行 ndd 删除n行 10dd 删除当前行到后面10行
dG 删除光标所在行到末尾的内容
D 删除光标所在处到行尾的字符
:n1,n2d 删除 行1 到 行2 范围内的行
5.复制和剪切命令
yy, Y 复制当前行 dd 剪切当前行
nyy,nY 复制当前行以下几行 ndd 剪切当前行以下几行
p 粘贴在当前行下一行
P 粘贴在当前行上一行
6.替换和取消命令
r 取代光标处字符(替换当前光标所在处单个字符)
R 从光标所在处开始替换字符 按ESC键结束
u(小写) 取消上一步操作(在没保存之前生效) undo
7.索索和替换命令
@1 /string 注意Linux中区分大小写,搜索字符串的时候,如果但是小写,大写的字符串不会被搜索出
在搜索前可使用命令忽略大小写
:set ic 忽略大小写
:set noic 关闭大小写
例如:在文件中搜索处含有ftp或FTP的行
:set ic
/ftp
n next 从上向下查找下一个出现的位置
N 从下向上查抄下一个出现的位置
@2 全文替换指定字符串
:%s/old/new/g 替换文本中所有字符串
%s 全部 old 要被替换的字符串 new 被替换后的字符串 g global 不提示直接替换 若为c 会提问是否替换 old字符串
例如: :%s/jack/linux/g 将文件中的jack 替换成linux
:n1,n2s/old/new/g 在指定范围内替换字符串
8.退出命令
:wq 保存并退出 快捷键 ——> ZZ (按两次大写ZZ)
:wq! 强行保存退出(当文件所有者或root没有 w 写入权限时,可以使用强行保存退出)
只有文件所有者可root超级管理员可以使用此命令
:q! 不保存退出
:w 保存一下,不退出 相当于windows的 Ctrl+S
:w /root/test 另存为到另一个位置
应用实例
1.导入文件
:r fliename 把filname文件的内容导入到当前文件中的指定位置
例如:把 /home/test/hello.php 文件导入到当前文件中 :r /home/test/hello.php
2.在vim下执行 命令
:! 命令 例如 : :! ls -al /etc/test/
我们在编辑文件时没必要先保存退出,再执行命令,可以直接在vim中执行
:! 命令 执行后回车继续
小技巧:1和2一起使用
例如 :我们在写脚本的时候需要标注出 注释 版权 负责人 最后修改时间
可使用 :r !date 把当前系统时间导入到文件中指定位置
3.定义快捷键
:map 快捷键 触发命令 回车执行命令
例如 为每一行行首添加注释#
快捷键定义 :map ^P I# I表示进入插入模式,光标定位到行首 #插入#符号
注意:
定义快捷键时 ^P 的输入使用(分别按Ctrl+v和 Ctrl+p或(Ctrl+v+p一起敲))进行输入
x
插入邮箱地址 :map ^E ijack@sina.com
我们可以把日常常用的工作定义为快捷键提高编写的效率
4.连续行注释
@1 :n1,n2s/^/#/g ^ 表示行首
在n1到n2的范围内行首加入#注释符 :4,8s/^/#/g 在第4到8行的行首加上#符
@2 :n1,n2s/#//g 去掉字符 即替换为空
4,8s/#//g 会把范围内的所有#符号给去掉不单指行首
4.8s/^#//g 只把范围内的行首的#符去掉
@3 特殊字符转义处理
如果使用的注释符为 // 则需要进行转义
:1,5s/^\/\//g 在1到5行的行首插入//注释符 对//进行转义
5.替换命令
:ab mail jack@sina.com
可把mail看作 a jack@sina.com 看作b
在vim 中输入 mail 按空格或回车则变为 jack@sina.com
如果在文件中需要不断出入较长的相同文本可使用这一命令
取消 :ab 定义
:unab mail 回车 然后在文件中编辑则不会被替换
也可以取消快捷键的定义 :unmap ^P
注意:
上述我们在vim中的一些设置和快捷键的定义只在当前打开编辑的文件下有效,vim保存退出后都会失效,我们可以通过更改vim配置文件来使得自己的设置对于每次打开的文件都适用
编辑vim配置:
每个用户都有一个宿主目录
root 的宿主目录为 /root
普通用户宿主目录为 /home/uername
在宿主目录下都有一个文件 .vimrc(缺省文件——空文件)
我们可以在这个文件下配置vim的配置
例如我们可以修改root的 .vimrc 文件
vi /root/.vimrc
在里面写入
set nu 打开每个文件都显示行号 可加入:也可不写
map ^P I# 快捷键加注释
ab mail jack@sina.com
Linux之Vim编辑器使用的更多相关文章
- Linux的vim编辑器中的翻页命令
当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:Ctrl + f 键 f 的英文全拼为:forward: ...
- 【Linux】Linux中VIM编辑器的使用
vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢.今天跟大家分享一下vim编辑器的使用: vim编辑器模式介绍 ...
- Linux中vim编辑器常用操作技巧
Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...
- linux vi/vim 编辑器学习总结
linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...
- Linux中vim编辑器 的 快捷键 --- 常用 的 都比较全
Linux中vim编辑器的功能非常强大,许多常用快捷键用起来非常方便,这里将我学vim入门时学的一些常用的快捷键分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到 ...
- linux下vim编辑器查找 关键字
在 linux vim 编辑器 下查找 关键字 方法[一] 1?short_open_tag : 它的意思是vim 打开文件的第一行 ? : 它的意思是反向查找 short_open_tag ...
- Linux (五) VIM编辑器
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.简介 Linux系统环境下的一款非常重要的文本编辑工具,我们在Linux环境下几乎所有的文本文件 ...
- 【Linux】Vim编辑器-批量注释与反注释
[-] vim编辑器---批量注释与反注释 方法一 块选择模式 插入注释 取消注释 方法二 替换命令 批量注释 取消注释 实例演示 vim编辑器---批量注释与反注释 在使用vim编写代码的时候, ...
- Linux的vim编辑器
vim编辑器常用的三种模式 vim /文件路径 进入编辑器,编辑该文件 例:vim /etc/passwd 命令行模式:在编辑器中直接输入命令 dd:删除光标所在的一行 ndd:删除光标所在的向下的n ...
- Linux vi/vim编辑器
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...
随机推荐
- 常用shell变量$#,$@,$0,$1,$2等
常用shell变量$#,$@,$0,$1,$2的含义解释: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返 ...
- .Net设计模式_单列模式
理解 博友的经典说法:很多人排队去厕所蹲坑一样,每一次只能让一个人去蹲坑,这是一种通俗的理解. 理论上的理解则为,我们需要写一个类,这个类的作用就是控制,从而保证在整个应用程序的生命周期中,在任何时刻 ...
- Linux 下挂载硬盘的 方法
1. 添加磁盘,查看磁盘状况 [root@db1 /]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sector ...
- RabbitMQ 概念
RabbitMQ快速概念入门 转(http://blog.csdn.net/qq_16414307/article/details/50585630) 本文适有一定消息队列基础的,但没有接触过Ra ...
- mysql in查询 结果乱序 引发的思考
Mysql in查询 结果集 乱序 SQL: select * from table where id IN (3,6,9,1,2,5,8,7); 这样的情况取出来后,其实,id还是按1,2,3,4, ...
- 在Tomcat下部署web项目
每个web项目可以以两种方式存在,如联合风控项目,Urc.war,另一中是Urc解压后的目录结构.而tomcat目录下的\webapps\下则均是要部署的web项目解压后的文件夹,启动tomcat后, ...
- Maven实现Web应用集成測试自己主动化 -- 部署自己主动化(WebTest Maven Plugin)
上篇:Maven实现Web应用集成測试自己主动化 -- 測试自己主动化(WebTest Maven Plugin) 之前介绍了怎样在maven中使用webtest插件实现web的集成測试,这里有个遗留 ...
- Git 经常使用的命令
查看.参加.服从.删.恢复,复位更改文件 git help <command> # 演出command的help git show # 显示的提交内容 git show $id git c ...
- 腾讯QQ企业邮箱POP3/SMTP设置
腾讯企业邮箱支持通过client进行邮件管理. POP3/SMTP协议 收发邮件server地址分别例如以下. 接收邮件server:pop.exmail.qq.com (port 110) 发送邮件 ...
- 韩玉琪 《Linux内核分析》MOOC课程
http://www.cnblogs.com/hyq20135317/p/5422516.html http://mooc.study.163.com/course/USTC-1000029000