linux操作之文本编辑器
1、文本编辑器的作用
编辑和修改系统中的那些以文本形式存在的文件(特别是各种配置文件),也可以用于 编写程序代码
2、linux下的常见编辑器
nano、Emacs、gedit、vim等
3、vim三种模式下的工作
命令模式:文件内容的浏览、光标移动、删除、复制、粘贴、查找
输入模式:输入和编辑内容
末行模式:字符串的替换、文件的保存、另存,vim编辑环境的退出
4、命令模式下的基本操作
(1)查看操作
单词跳转:
w:跳转到后一个单词的词首
b:跳转到前一个单词的词首
e:跳转到后一个单词的词尾
行内跳转:
^:跳转到当前行的第一个非空字符上
0:跳转到当前行的绝对行首
$:跳转到光标所在行的行尾
行间跳转:
1G或gg:定位到第一行
G:定位到最后一行
12G:定位到第十二行
:set nu :显示行号
:set nonu:去掉行号
小技巧: :行号 可以快速跳转到指定行
翻屏:
向前翻一屏(page down 或 ctrl + f)
向后翻一屏(page p 或ctrl + b)
(2)复制、粘贴和删除类操作
删除操作:
x:删除光标所在位置的一个字符
5x:删除光标所在位置以及后面的一共5个字符
d^:删除光标位置一直到行首(光标所在位置的字符保留)
d$:删除光标位置一直到行尾(光标位置字符不保留)
dd:删除光标所在行
cc:删除光标所在行并转到输入模式
4dd:删除广光标所在行以及以下一共四行
4cc:删除光标所在行以及以下一共四行,并转到输入模式
d1G:删除光标所在行到第一行的所有内容(光标所在行删除)
dG:删除光标所在行到最后一行的全部内容(光标所在行删除)
备注:dd和cc还可以用于剪切操作
小技巧:
:行号 d 删除指定行
:起始行号,终止行号 d 删除指定范围的行 例如(:1,8d)
复制操作:
yy:复制光标所在行
4yy:复制光标所在行以及以下一共4行
粘贴操作:
p(小写):粘贴复制内容到光标所在行的下面
P(大写):粘贴复制内容到光标所在行的上面
区块选择:
v(小写):按字符选择,光标经过的地方反白选择
V(大写):按行选择,光标经过的地方反白选择
ctrl+v:区块选择,可以按照长方形的方式选择
y:将反白部分复制
d:将反白部分删除
p:将复制内容粘贴到光标后面
(3)文件内容查找类操作
/要找的字符串 (从上往下查找) eg:/name 查找当前文件的name字符串
? 从下往上找
n 切换到下一个匹配的字符串
N 切换到上一个匹配的字符串
(4)撤销和保存退出类操作
u:撤销上一次的编辑操作(可无穷次撤销,类似于word里面的ctrl+z)
ctrl+r:撤销上一次撤销的东西
. :重复上一次的操作
ZZ(大写):保存并退出
5、末行模式下的操作
(1)文件的保存和退出类操作
:w 保存当前文档
:w 文件名 将当前编辑的内容保存到另外一个新的文件里
:wq 保存当前文件并退出vim编辑环境
:q 退出vim编辑环境
:q! 强制不保存就退出
:wq! 强制保存退出
(2)打开和读入文件类操作
:e 文件名 将一个新的文件打开并编辑
:e! 放弃对当前文件的已经编辑的内容
:r 文件名 将一个新的文件的内容读到当前正在编辑的文件的尾部
(3)文件内容替换类操作
:s /老内容/新内容 eg:/boy/girl 将光标所在行的第一个boy换成girl
:s /boy/girl/g 将光标所在行的所有boy换成girl
:5,8 s /boy/girl/g 将5~8行的所有boy换成girl
:% s /boy/girl 将文件中每行第一个boy换成girl
:% s /boy/girl/g 将文件中所有boy换成girl
小技巧:
1、多文件操作
:files 显示正在编辑的多个文件的信息
:n 切换到下一个文档
:N 切换到上一个文档
:first 切换到第一个文档
:last 切换到最后一个文档
2、多窗口操作
vim -o 文件1 文件2 上下拆分
vim -O 文件1 文件2 左右拆分
对一个文件进行拆分
ctrl+w+s 上下拆分
ctrl+w+v 左右拆分
ctrl+w+arrow 多窗口切换(arrow表示方向键)
linux操作之文本编辑器的更多相关文章
- Linux常用命令——文本编辑器Vim
Linux常用命令--文本编辑器Vim Linux Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...
- Linux vi 命令 – 文本编辑器
vi命令是linux系统字符界面下的最常用的文本编辑器. vi编辑器是所有linux的标准编辑器,用于编辑任何ASCⅡ文本,对于编辑源程序尤其有用.iv编辑器功能非常强大,可以对文本进行创建,查找,替 ...
- Linux中vim文本编辑器的介绍和使用方法
vim主要模式介绍,vim命令模式. 确保系统已经安装了VIM工具 [root@panda ~]# rpm -qf `which vim` [root@panda ~]# rpm -qf `which ...
- linux 学习5 文本编辑器 vim
vim 没有菜单,只有命令 //root用户既可以用vi,也可以用vim, 无实质性区别,vim是vi的升级版//粘贴用shift+insert , 要在insert模式下粘贴,否则粘贴不全// ^ ...
- linux下Vim文本编辑器的常用快捷键
Linux插入命令 a 在光标之后插入字符 A 把光标移动到行首尾进入插入模式 i 在光标之前插入字符 I 把光标移动到行首并进入插入模式 o 在光标下插入新行 O 在光标上插入新行 Linux定位 ...
- linux vi vim文本编辑器
vim是vi的加强版,建议使用vim. vim拥有三种模式: 命令模式(常规模式) vim启动后,默认进入命令模式,任何模式都可以通过esc键来回到命令模式.命令模式可以通过键入不同的命令来完成选择, ...
- linux下的文本编辑器VI的使用命令
1. 移动光标 H #移到屏幕的左上角 M #移到屏幕的中间行开头 L #移到屏幕的最后一行 [ #移到文件开始位置 (双击) ] #移到文件结束位置(双击) :n #移到文件的第n行 Ctrl + ...
- Linux命令(文本编辑器)
vi和vim编辑器:有插入模式,一般模式,地行模式 一班模式通过(i.a.o.I.A.O)键--->进入插入模式 插入模式(按Esc键退出)---->j进入一班模式 ...
- Linux之vi文本编辑器
vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode).输入模式(Insert mode)和末行模式(last line mode),各模式的功能区分如下: 1) 命令 ...
随机推荐
- Halcon学习之四:有关图像生成的函数
1.copy_image ( Image : DupImage : : ) 复制image图像 2.region_to_bin ( Region : BinImage : ForegroundGray ...
- PHP 获取二维数组中某个key的集合
本文为代码分享,也是在工作中看到一些“大牛”的代码,做做分享. 具体是这样的,如下一个二维数组,是从库中读取出来的. 代码清单: $user = array( 0 => array( 'id' ...
- Java基础-JDK、JRE与JVM的区别
JRE与JVM.JDK的区别 从下而上:最上层 JDK -- java development kit (java开发工具包)中间层 JRE -- java runtime enviro ...
- python 输入参数解包,模块导入,接收IO输入参数
#coding=utf-8 from sys import argv script,first,second,third = argv print "the script is=" ...
- python 将字符串转化为可执行代码
场景: 在一个遍历的的程序中,有一步需要调用函数,调用的方式是根据输入参数,从3个可供被调用的函数中,选择其中一个.所以写了一个dict={1:"function_a_name", ...
- oracle使用PLSQL免安装客户端
2. 下载Oracle Instant Client (32-bit) 只需要下载instantclient-basic-nt-11.2.0.3.0.zip就可以了,其它的都是一些根据不同需要扩展的包 ...
- 在Windows 8上安装SQL Server2012
SQL Server 2012 的安装方法跟2008差不多,基本上都是点击下一步,不过在安装的时候可能会进度条一直停留在“正在启动操作系统功能”NetFx3””处不动,出现这个问题的原因是在Windo ...
- 复习action委托
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 1.python系统性能信息模块之psutil模块
Psutil(进程和系统实用程序)是一个跨平台的库,用于在Python中检索有关运行进程和系统资源利用率(CPU,内存,磁盘,网络)的信息.它主要用于系统监视,分析和限制系统资源及运行进程的管理.它实 ...
- 远程访问Function时报错Remote table-valued function calls are not allowed.
开始是这样调用的:select * from [LinkedServer].[db name].dbo.[function name](param1, param2) 原因: Only table-v ...