文本编辑器vim
Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最大的文本编辑器,它的作用是建立、编辑、显示文本文件。
Vim没有菜单,只有命令。
| 命令 | 作用 |
| a | 在光标所在字符后插入 |
| A | 在光标所在行尾插入 |
| i | 在光标所在字符前插入 |
| I | 在光标所在行行首插入 |
| o | 在光标下插入新行 |
| O | 在光标上插入新行 |
| 命令 | 作用 |
| :set nu | 设置行号 |
| :set nonu | 取消行号 |
| gg | 到第一行 |
| G | 到最后一行 |
| nG | 到第n行 |
| :n | 到第n行 |
| $ | 移至行尾 |
| 0 | 移至行首 |
| 命令 | 作用 |
| x | 删除光标所在处字符 |
| nx | 删除光标所在后n个字符 |
| dd | 删除光标所在行,ndd删除n行 |
| dG | 删除光标所在行到文件行尾内容 |
| D | 删除光标所在处到行尾内容 |
| :n1,n2d | 删除指定范围的行 |
| 命令 | 作用 |
| yy | 复制当前行 |
| nyy | 复制当前行以下n行 |
| dd | 剪切当前行 |
| ndd | 剪切当前行以下n行 |
| p、P | 粘贴在当前光标所在行下或行上 |
| 命令 | 作用 |
| r | 取代光标所在处字符 |
| R | 从光标所在处开始替换字符,按Esc结束 |
| u | 取消上一步操作 |
| 命令 | 作用 |
| :w | 保存修改 |
| :w filename | 另存为指定文件 |
| :wq | 保存修改并退出 |
| ZZ | 快捷键,保存修改并退出 |
| :q! | 不保存修改退出 |
| :wq! | 保存修改并退出(文件所有者及root可使用) |
1.文本编译器 ASCII文件
vi的模式
编辑模式:键盘操作被解析为编辑命令
插入模式:文字输入
末行模式:vi的内置的命令接口,执行vi内置命令
2.编辑模式--》插入模式
i:在当前光标的所在处插入、
I:在当前光标的所在行首插入
a:在当前光标所在处的后面插入
A:在当前光标所在行的行尾插入
o:在光标所在行(新增)的下一行插入
O:在当前光标所在行(新增)的上一行插入
插入模式--》编辑模式
按[ESC]
编辑模式--》末行模式
:
末行模式--》编辑模式
ESC ESC
:q! 不保存退出
:wq 保存退出
:x 保存并退出
编辑模式 ZZ 保存退出
3.打开:可以一次打开多个文件
vi 文件名1 文件名2
在末行模式下输入next切换到下一个文件,输入prev切换到上一个文件,输入first切换到第一个文件,输入last切换;到最后一个文件
分割窗口打开多个文件
-O:水平分割
Ctrl+w,上下箭头
-o:垂直分割
Ctrl+w,左右箭头
vi +num 文件名 光标在第num行
vi + 文件名 光标在末尾行
4.编辑操作(编辑模式下)
.光标移动
单字符移动
H左 L右 J下 K上
可以和数字组合进行多个移动
单词间移动
w:跳至下一个单词的词
首
b:当前或前一个词首
e:当前或下一个词尾
行内移动
0:绝对行首
^:第一个非空白字符
$:绝对行尾
句间移动
(
)
段间移动
{
}
行间移动
num+g
G:最后一行
1G:第一行
x:删除光标所在处的字符
num+x:删除光标所在处开始向后的num个字符
dd:删除光标所在处的一行
num+dd:删除光标所在处向后的num行
r:替换光标所在处的字符
yw:复制光标所在处到行尾的字符
num+yw:复制num个字
yy:复制光标所在行
num+yy:复制num行
p:粘贴
5.末行模式:范围定界
设置行号:set nu
取消行号:set nonu
跳转至某一行:num
查找:/查找单词
?查找字符
替换字符
s/a/b 将光标所在行的第一个a替换成b
s/a/b/g 将光标所在行的所有a替换成b
start,end:例:1,10
.:表示当前行
$:最后一行
c:替换
1)导入命令执行结果:r!命令
2)定义快捷键:map 快捷键 触发命令
例:map ^P I#<ESC>
map ^B 0x
3)连续行注释 :n1,n2s/^/#/g
:n1,n2s/^/#//g
:n1,n2s/^/\/\//g
4)替换
:ab mymail 123456@qq.com
文本编辑器vim的更多相关文章
- Linux系列教程(十)——Linux文本编辑器vim
通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...
- Linux常用命令——文本编辑器Vim
Linux常用命令--文本编辑器Vim Linux Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...
- Linux文本编辑器vim
目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...
- LINUX文件内容处理及文本编辑器vim
Linux基本操作命令 echo命令 echo命令: 把echo后面的内容显示到屏幕. -n 显示内容的时候不显示每行结尾的回车 echo 内容 >> 文件名 表示把内容加到一个文件的末尾 ...
- 文本编辑器vim和gedit
vim和gedit都是文本编辑器 vim用法: vim 文件名 #打开文件 输入 i,进入文本编辑模式,编辑完再按ESC,退出编辑模式,再输:wq,保存退出:如果输:q!则是不保存退出,很简单.. 如 ...
- Linux基础学习(5)--文本编辑器Vim
第五章——文本编辑器Vim 一. Vim常用操作 1.Vim简介: Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑. ...
- Linux 文本编辑器 vim
第五讲 文本编辑器 vim
- Linux文本文件——文本编辑器Vim
Linux文本文件——文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是所 ...
- 第4章 文本编辑器vim
1. vim常用操作 1.1 vim简介 (1)vim是一个功能强大的全屏幕文本编辑器,是Linux/Unix上最常用的文本编辑器,它的作用是建立.编辑.显示文本文件. (2)vim没有菜单,只有命令 ...
- 文本编辑器VIM/VI
vim/vi 功能强大全屏文本编辑器.主要是建立,编辑,显示文本. www.vim.org 构建shell脚本 :set number 使文件出现行号 a 光标后附件文件 i在光标前插入文 ...
随机推荐
- 6/6 Sprint2 看板和燃尽图
页面头部的修改
- [转]用Python读写Excel文件
[转]用Python读写Excel文件 转自:http://www.gocalf.com/blog/python-read-write-excel.html#xlrd-xlwt 虽然天天跟数据打交 ...
- ACM2 递归 n分成k份
//将n 分成k份的 分法总数 #include "stdafx.h" #include"stdio.h" #include<iostream> u ...
- hdu---1024Max Sum Plus Plus(动态规划)
Max Sum Plus Plus Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- linq to xml学习
http://www.cnblogs.com/greatverve/archive/2010/07/09/linq-to-xml-add-delete-update-query.html 记录一下,别 ...
- uva 12186
12186 - Another Crisis Time limit: 3.000 seconds A couple of years ago, a new world wide crisis star ...
- Java JDK的安装以及环境变量的配置
安装并配置完Android SDK之后,本想着可以做个简单的APP应用了,只是依然提示我“请确认Java JDK是否安装”类似的报错,于是又进行了Java JDK的安装以及环境变量的配置. 1.下载地 ...
- 利用VBoxManage对虚拟机格式vdi、vmdk、vhd进行互转
虚拟机顾名思义就是虚拟出来的机器(virtual machine),虚拟化技术也是时下IT界最热门的技术,因其能更加有效利用硬件资源,整合IT应用,降低TCO,节能环保等,说白了就是一台硬件上够强 ...
- 创建link server链接服务器碰到的问题及解决办法
问题描述 今天在做数据库迁移,然后新建link server(链接服务器)的时候,碰到以下问题. 我的sql 脚本是这样的. 然后,执行的时候就收到以下错误信息. Msg 468, Level 16, ...
- HTML内容整理
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...