Linux 文本编辑常用快捷键
一、编辑模式
vim有三种编辑模式
1. i 进入文本编辑模式
2. esc 进入命令编辑模式
命令编辑状态下 dd删除整行
3. :进入底行模式
底行模式状态 输入q 退出 w保存 wq 保存并退出 !表示强制的意思 q!强制退出
二 、编辑文本常用快捷键
1、插入命令
a 在光标后附加文本
A 在本行行末附件文本
i 在光标前插入文本
I 在本行开始插入文本
o 在光标下插入文本
O 在光标上插入文本
2、定位命令
h或方向左键 左移一个字符
j或方向下键 下移一行
k或方向上键 上移一行
l或方向右键 右移一个字符
$ 移至行尾
0 移至行首
H 移至屏幕上端
M 移至屏幕中央
L 移至屏幕下端
:set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最后一行
nG 到第n行
:n 到第n行
3、删除命令
x 删除光标所在的字符
nx 删除光标所在处后n个字符
dd 删除光标所在行
dG 删除光标所在行导末尾的内容
D 删除从光标所在行到末尾的内容
:n1,n2d 删除指定范围的行
4、复制和剪切命令
yy或者Y 复制当前行
nyy或者nY 复制当前行一下n行
dd 剪切当前行
ndd 剪切当前行以下n行
p或者P 粘贴在当前光标所在行下或行上
5、替换和取消命令
r 取代光标所在处的字符
R 从光标所在处开始替换字符,按Esc键结束
u 取消上一步操作
6、搜索和替换命令
/string 向前搜索指定命令,搜索时忽略大小写:set ic ,如搜索ftp: /ftp
n 搜索指定字符串的下一个出现位置
:%s/被替换的字符串/替换成的字符创/g 例如把全文的ftp替换成hello :%s/ftp/hello/g
:n1,n2s/被替换的字符串/替换成的字符创/g 在一定的范围内替换字符串
7、保存退出命令
:wq 或者 ZZ 保存退出
:q! 不保存退出
:wq! 强行保存退出 (root或者文件的所有者)
8、应用实例
1)在vi中导入文件 :
:r 文件
如:导入/test目录下的abc.txt文件 :r /test/abc.txt
2)在vi中执行命令:
:!命令
如:在vi编辑器中查看 /test目录下的文件详细信息 :!ls -l /test
这样就不需要先退出vi再去执行命令
3)把命令执行的结果导入到vi中:
如:把date命令执行的结果导入到vi中
:r !date
4)定义快捷键
:map 快捷键 触发的命令
如: :map ^P I#<ESC> ^表示定义的快捷键,
注意,在vi中,^这个符号是使用ctrl+v组合输入的符号,^P 在vi中的输入是ctrl+v和ctrl+p,或者ctrl+v+p
:map ^P I#<ESC> 表示光标无论在行的哪个位置,只要按下ctrl+p就可以在行首插入#号,然后回到命令模式。I表示在行首插入文本,<ESC>表示 回到命令模式。
:map ^E acodeartisan@gmail.com 定义了一个快捷键ctrl+e,只要按下ctrl+e就可以在光标位置输入我的邮箱acodeartisan@gmail.com,非常方便。
再比如我们要定义一个快捷键,无论光标在行的哪个位置,只要按下ctrl+b,就可以去掉行首的#注释(实际上就是把行首的第一个字符删掉)
:map ^B 0x 定义了一个快捷键ctrl+b。0表示移到行首,x表示删除光标所在字符。
5)连续行注释
:n1,n2s/^/#/g 在n1行和n2行之间的行首加入#注释
:n1,n2s/^#//g 把n1行和n2行之间的行首的#注释去掉
Linux 文本编辑常用快捷键的更多相关文章
- Linux/Ubuntu常用快捷键
问题描述: Linux/Ubuntu常用快捷键 问题解决: +++++++++++++++++++ 全局系统 +++++++++++++++++++++ Alt + F1:相当于w ...
- 【Linux】一步一步学Linux——Linux系统常用快捷键(12) 待更新...
目录 00. 目录 01. Gnome下的快捷键 02. 其它 03. 参考 00. 目录 @ 参考博客:https://blog.csdn.net/dengjin20104042056/articl ...
- [Linux] VIM 常用快捷键2
如何使用MacVim 1.在插入模式之外 基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面 VIM 就像一个“哑巴”编辑器一样.很多新手都会一直呆在插入模式里面,因为这样易于使用.但 ...
- linux系统常用快捷键
centos 命令快捷键: 挂起:Ctrl+s 解除挂起:ctrl+q 清屏:Ctrl+l 注销或退出:Ctrl+d 命令行光标移动: Ctrl+a 移动到命令行首 Ctrl+e 移动到命令行尾 Ct ...
- 【Linux】一步一步学Linux——Bash常用快捷键(11)
目录 00. 目录 01. 编辑命令 02. 搜索命令 03. 控制命令 04. 其它 05. 参考 00. 目录 @ 生活在 Bash Shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率 ...
- linux终端常用快捷键
Ctrl + d 删除一个字符,相当于通常的Delete键(命令行若无任何字符,则相当于exit:处理多行标准输入时也表示EOF ) Ctrl + h 退格删除一个字符,相当于 ...
- Linux 终端常用快捷键
Tab 自动补全 Ctrl+L 清屏 Ctrl+A 移动到头 Ctrl+E 移动到尾 Ctrl+左键头 左移一个单词 Ctrl+右箭头 右移一个单词 Ctrl+U 删除左边所有字符 Ctrl+K 删除 ...
- Linux Shell常用快捷键
ctrl+a[A]:将光标移到命令行开头 ctrl+e[E]:将光标移到命令行结尾 ctrl+c[C]:强制终止命令执行 ctrl+u[U]:删除/剪切光标之前的所有字符 ctrl+y[Y]:粘贴ct ...
- Linux之常用快捷键
tab:自动补齐命令或者路径 ESC+u:将字符小写变大写 ctrl+s:在终端中冻结stdin ctrl+q:在终端中恢复stdin ctrl+a:光标移动到行首 ctrl+e:光标移动到行尾 ct ...
随机推荐
- Ubuntu 16.04 LTS安装Docker
一.安装Docker的先决条件 1.运行64位CPU构架的计算机(目前只能是x86_64和amd64),请注意,Docker目前不支持32位CPU.2.运行Linux 3.8或更高版本内核.一些老版本 ...
- 详解window.history
http://blog.csdn.net/woxueliuyun/article/details/51075272
- Linux上安装Docker,并成功部署NET Core 2.0
概述 容器,顾名思义是用来存放并容纳东西的器皿: 而容器技术伴着Docker的兴起也渐渐的映入大家的眼帘,它是一个抽象的概念,同时也是默默存在世上多年的技术,不仅能使应用程序间完全的隔离,而且还能在共 ...
- mysql主给备赋予权限时报错,MySQL [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause
https://www.cnblogs.com/skymyyang/p/7551646.html 在my.cnf 里面设置sql_mode='STRICT_TRANS_TABLES,NO_ZERO_I ...
- 使用git和github管理项目代码
以前不知道使用代码管理工具,最后写的一些东西都没有了,由于硬盘坏了或者不小心格式化了之类的,后来使用了Git 和Github来托管自己的代码和读书笔记方便了不少,到哪里只要有网就可以把自己的东西拷贝下 ...
- 第二章 你第首个Electron应用 | Electron in Action(中译)
本章主要内容 构建并启动Electron应用 生成package.json,配置成Electron应用 在你的项目中包含预先构建Electron版本 配置package.json以启动主进程 从主进程 ...
- C语言中的static和extern
c语言中,全局变量是一个非常重要的概念.全局变量定义在函数外,可以被所有的函数共同使用. #include <iostream> ; void display() { printf(&qu ...
- iOS开发 - Protocol协议及委托代理(Delegate)
因为Object-C是不支持多继承的,所以很多时候都是用Protocol(协议)来代替.Protocol(协议)只能定义公用的一套接口,但不能提供具体的实现方法.也就是说,它只告诉你要做什么,但具体怎 ...
- 【extjs6学习笔记】0.1 准备:基础概念(02)
Ext 类 Ext 是一个全局单例的对象,在 Sencha library 中它封装了所有的类和许多实用的方法.许多常用的函数都定义在 Ext 对象里.它还提供了像其他类中一些频繁使用的方法的快速调用 ...
- What is a meta-class in Objective-C?
http://www.cocoawithlove.com/2010/01/what-is-meta-class-in-objective-c.html In this post, I look at ...