Linux篇---Vi的使用
一、前述
Vi类似记事本,所以用好记事本对编程效率有很大得影响,有着事半功倍的效率。
二、具体操作
1、打开文件
vim /path/to/somefile
vim +# :打开文件,并定位于第#行
vim +:打开文件,定位至最后一行
vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首
2、关闭文件
末行模式:
:q 退出 没有动过文件
:wq 保存并退出 动过了,不后悔
:q! 不保存并退出 动过了,后悔了
:w 保存
:w! 强行保存
:wq --> :x
ZZ: 保存并退出 不需要冒号,编辑模式
3、全屏编辑器
模式:
编辑模式:按键具有编辑文本功能:默认打开进入编辑模式
输入模式:按键本身意义
末行模式:接受用户命令输入
编辑-->输入:
i: 在当前光标所在字符的前面,转为输入模式;
a: 在当前光标所在字符的后面,转为输入模式;
o: 在当前光标所在行的下方,新建一行,并转为输入模式;
O:在当前光标所在行的上方,新建一行,并转为输入模式;
I:在当前光标所在行的行首,转换为输入模式
A:在当前光标所在行的行尾,转换为输入模式
输入-->编辑:
ESC
编辑-->末行:
:
末行-->编辑:
ESC, ESC
4、编辑模式
移动光标
字符
h: 左;j: 下;k: 上;l: 右
单词
w: 移至下一个单词的词首
e: 跳至当前或下一个单词的词尾
b: 跳至当前或前一个单词的词首
行内
0: 绝对行首
^: 行首的第一个非空白字符
$: 绝对行尾
行间
G:文章末尾
3G:第3行
gg:文章开头
翻屏
ctrl:f,b
删除&替换单个字符
x:删除光标位置字符
3x:删除光标开始3个字符
r:替换光标位置字符
删除命令 : d
dw,dd
复制粘贴&剪切
yw,yy
p
P
撤销&重做
u 撤销
ctrl+r 重做 撤销的操作
. 重复上一步的操作
set:设置
set nu number
set nonu nonumber
set readonly
/:查找
/after
n,N
?向上查找
!:执行命令
:!ls -l /
s查找并替换
s/str1/str2/gi
/:临近s命令的第一个字符为边界字符:/,@,#
g:一行内全部替换
i:忽略大小写
范围
n:行号
.:当前光标行
+n:偏移n行
$:末尾行,$-3
%:全文
Linux篇---Vi的使用的更多相关文章
- [zz] 安装PostGIS(Linux篇)
0.安装PostgreSQL数据库 参考安装PostgreSQL数据库(Linux篇). 1.安装proj4 #tar zxvf proj-4.8.0.tar.gz#cd proj-4.8.0#./c ...
- 【转】Linux上vi(vim)编辑器使用教程
Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...
- 版本控制工具Git工具快速入门-Linux篇
版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...
- C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇)
C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇) 名词解释:apxs apxs is a tool for building and installi ...
- Linux 中 Vi 编辑器的简单操作
Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi filename //打开或新 ...
- linux退出vi
linux退出vi操作,可以先按“esc”,再按“:”,“x”即可,这是要保存退出. 假如是修改过的,不保存,即是:先按 : ,然后输入 q! 回车 假如未改动,即先按 : ,然后输入 ...
- Linux下vi编辑器粘贴复制剪切功能
RedHat 9.0 Linux下vi编辑器实现简单的粘贴复制剪切功能": 如果想把文件内的第三行内容黏贴到第十五行: 1.进入你的文件,(处于命令模式,而不是编辑模式) 2.将你的光标移到 ...
- os内存使用管理之linux篇
os内存使用管理之linux篇 看一下LINUX内存机制是怎么运作的,了解了基础知识,对于理解和操作是有很大帮助的. 抛砖引玉: Linux 优先使用物理内存,当物理内存还有空闲时,linux是不会施 ...
- Linux 下 Vi 配置文件 .vimrc 文件
Linux 下 Vi 配置文件 .vimrc 文件 配置 vim 的方法是在用户主目录下建立个.vimrc文件,我一般使用root帐户,所以就在/root/下建立一个.vimrc文件:vi /root ...
随机推荐
- POSIX信号量
DESCRIPTION POSIX 信号量允许进程间和线程间同步他们的操作. 一个信号量是一个整型(integer),其值不能小于0. 信号量允许2中操作:给信号量的值加1(sem_post); 给信 ...
- Centos6.5系统关闭防火墙
关闭Centos6.5系统防火墙步骤: 1.命令:service iptables stop //停止正在运行的防火墙服务 2.命令:chkconfig iptables off //永久关闭防火墙 ...
- 不用框架,原生使用python做注册接口/登陆接口/充值接口的测试,做的数据/代码分离
注意充值时候,cookie的处理方法,还是原来的三种方法 1.操作数据文件 do_exclel.py # -*- conding:utr-8 -*- #@Time :2018/11/8 22:46 ...
- redis对hash进行的相关操作
redis对hash类型操作的相关命令以及如何在python使用这些命令 redis对hash类型操作的命令: 命令 语法 概述 返回值 Redis Hdel 命令 hdel key field [f ...
- 微软官网tools
DHCP/AD域插件: 远程管理工具(含DHCP/AD域) 安装网址: https://www.microsoft.com/zh-cn/download/details.aspx?id=7887 程序 ...
- 8080端口被System占用
System是Windows页面内存管理进程,拥有0级优先权,没有它系统无法启动 就是说,System进程是无法关闭的,所以不要尝试去强行关闭,可能引起电脑异常查看是否是IIS占用的, 进入电脑控制面 ...
- Pytorch
torch.nn.utils.rnn: pack_padded_sequence() pad_packed_sequence() Notice: The padded embedding metrix ...
- python3 替换字符串中指定位置字符
大家都知道字符串在python中是不可变数据类型,那么我们如何替换字符串中指定位置的字符呢? 字符串转换列表替换并转换解决: def replace_char(string,char,index): ...
- PHP序列号生成函数和字符串替换函数代码
/** * 序列号生成器 */ function snMaker($pre = '') { $date = date('Ymd'); $rand = rand(1000000,9999999); $t ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习7
#include <iostream> #include <string> #include <cctype> using namespace std; int m ...