Liunx vi/vim 2
移动光标的方法
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下方那一行的第一个字符
G 移动到这个档案的最后一行(常用)
nG n为数字,移动到这个档案的第n行。例如20G则会移动到这个档案的第20行(可配合 :set nu )
gg 移动到这个档案的第一行,相当于 1G(常用)
n<Enter> n为数字 ,光标向下移动n行(常用)
搜索替换
/word 向光标之下寻找一个名称为word的字符串。例如要在档案内搜索vbird这个字符串,就输入/vbird即可(常用)
?word 向光标之上寻找一个字符串名称为word的字符串。
n 这个n是英文按键,代表着重复前一个搜寻的动作。举例来说,如果刚刚我们执行/vbird 去向下搜寻vbird这个字符串,则按下n后,
会向下继续搜寻下一个名称为vbird的字符串。如果是执行?vbird的话,那么按下n则会向上继续搜寻名称为vbird的字符串
N 这个N是英文按键,与n刚好相反,为 反向 进行前一个搜寻动作。例如/vbird后,按下N则表示 向上 搜寻 vbird
使用/word 配置n及N是非常有帮助的 ,可以让你重复的找到一些你搜寻的关键词
:n1,n2s/word1/word2/g n1与n2为数字,在第n1与n2行之间寻找word1这个字符串,并将该字符串取代为word2
举例来说,在100到200行之间搜寻vbird 并取代为VBIRD则:
:100,200s/vird/VBIRD/g (常用)
:1,$s/word1/word2/g 从第一行到最后一行寻找word1字符串 并将该字符串取代为 word2 (常用)
:1,$/word1/word2/gc 从第一行到最后一行寻找word1字符串,并将该字符串取代为 word2 且在取代前显示提示字符给用户确认
confirm 是否 需要取代 (常用)
删除 复制 与粘贴
x,X 在一行字当中,x为向后删除一个字符,(相当于 del 按键) X 为向前删除一个字符
nx n为数字,连续向后删除n个字符,举例来说,我要连续删除 10个字符, 10x
dd 删除游标所在的那一整行 (常用)
ndd n为数字,删除光标所在的向下 n行,例如20dd 则是删除20行(常用)
d1G 删除光标所在到第一行的所有数据
dG 删除光标所在到最后一行的所有数据
yG 复制游标所在行到最后一行的所有数据
y0 复制光标所在的那个字符到该行行首的所有数据
y$ 复制光标所在的那个字符到该行行尾的所有数据
p,P p 为将已复制的数据在光标下一行贴上,P则为贴在游标上一行,举例来说,我目前光标在第20行,且已经复制了10行数据
,则按下p后,那10行数据会贴在原本的20行之后,就是从21行开始帖,但如果是按下P,那么原本的第20行会被推到变成30行(常用)
J 将光标所在行与下一行的数据结合成同一行
c 重复删除多个数据,例如向下删除10行 [10cj]
u 复原前一个动作 (常用)
Ctrl + r 重复上一个动作(常用)
. (点) 重复前一个动作
第二部分: 一般模式切换到编辑模式的可用的按钮说明
进入输入或取代的编辑模式
i,l 进入输入模式(Insert mode )
i 为【从目前光标所在处输入】 I 为 【在目前所在行的第一个非空格符处开始输入】 (常用)
a A 进入输入模式(Insert mode)
a 为【从目前光标所在的下一个字符处开始输入】A 为【从光标所在行的最后一个字符处开始输入】
oO 进入输入模式(Insert mode)
这是英文字母o的大小写,o为【在目前光标所在的下一行处输入新的一行】O 为在目前光标所在处的上一行输入新的一行(常用)
rR 进入取代模式(Replace mode)
r 只会取代光标所在的那一个字符一次,R会一直取代光标所在的字符,知道按下Esc 为止(常用)
上面这些按键中,在vi画面的左下角处会出现【INSERT】 【replace】
Esc 退出编辑模式,回到一般模式中(常用)
第三个部分: 一般模式切换到指令行模式的可用的按钮说明
指令行的存储, 离开等指令
:w 将编辑的数据写入硬盘档案中 (常用)
:w! 若文件属性为【只读】时,强制写入该档案,不过,到底能不能写入,还是跟你对该的档案的权限有关
:q 离开 vi(常用)
:q! 若曾修改过档案,又不想存储,使用!为强制离开不存储档案。
注意: ! 在vi中,常常有 强制的意思。
:wq 存储后离开,若为 :wq! 则为强制存储后离开(常用)
ZZ 这是大写的 Z ,若档案没有更改,则不存储离开,若档案已经被更改过,则存储后离开
:w [filename] 在编译的数据中,读入另一个档案的数据,即将【firlename】 这个档案内容加到游标所在行的后面
:n1,n2 w[filename] 将n1到n2 的内容存储成filename 这个档案。
:!command 暂时离开vi 到指令行模式下执行 command 的显示结果,例如【:!ls /home】 即可在vi 当中查看/home底下ls输出的档案信息
vim 环境的变更
:set nu 显示行号,设定之后,会在每一行的前缀显示改行的行号
:set nonu 与 set nu 相反,为取消行号!
Liunx vi/vim 2的更多相关文章
- Linux vi/vim(转载)
Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...
- vi/vim 的使用
vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...
- 解决vi/vim中粘贴会在行首多很多缩进和空格的问题
解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那 ...
- Linux下Vi/Vim使用笔记
启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...
- vi/vim基本使用方法
vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...
- Linux vi/vim
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...
- Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- 【转载】-- vi/vim使用
vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...
- 小白学Linux(五)--VI/VIM编辑器
我们操作文件,终究离不开编辑文件,对文件内容的编辑,Linux系统下,我们通常使用VI/VIM来编辑文件.VI是每个Linux都会自带的文本编辑器,VIM是VI的增强版,可能有些发行版本没有自带,可以 ...
随机推荐
- php数字转人民币金额大写
numToRmb.php <?php header("content-type:text/html;charset=utf-8"); function numToRmb($n ...
- ZOJ3195 Design the city [2017年6月计划 树上问题04]
Design the city Time Limit: 1 Second Memory Limit: 32768 KB Cerror is the mayor of city HangZho ...
- LUOGU P2587 [ZJOI2008]泡泡堂
传送门 解题思路 刚开始先写了个田忌赛马的贪心,就是要是打不过就拿最弱的送死,30分...后来瞄了眼题解,发现这样是错的,比如说这样的数据 : 3 3 2 3 1 如果用田忌赛马的话,让2-3 3-1 ...
- Faster RCNN算法训练代码解析(2)
接着上篇的博客,我们获取imdb和roidb的数据后,就可以搭建网络进行训练了. 我们回到trian_rpn()函数里面,此时运行完了roidb, imdb = get_roidb(imdb_name ...
- 发布Qt Widgets桌面应用程序的方法
Qt是一款优秀的跨平台开发框架,它可以在桌面.移动平台以及嵌入式平台上运行.目前Qt 5介绍程序发布的文章帖子比较少.大家又非常想要知道如何发布Qt应用程序,于是我花了一点儿时间介绍一下如何发布Qt桌 ...
- 安装docker报错问题
安装docker容易出现错误的几种情况: 1.网络问题,无法下载完成的docker容器 2.linux内核版本必须是3.10及以上 3.可以选择使用aliyun的yum源,更好用 4.
- (实现)vue.js最简实现
Vue.winward.js vue.js最简实现(the most simple vue.js) 让所有人都看得懂Vue原理 建议看完Vue.winward.js后,结合mpvue源码解读单页应用路 ...
- JS的八大数据类型
js中的数据类型,包括基本数据类型(Number,String,Boolean, Undefined,Null)和 复杂(引用)数据类型(Object,Array,Function) 基本数据类型 ...
- Vijos1775 CodeVS1174 NOIP2009 靶形数独
靶形数独 描述 小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他 们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向 Z博士请教, Z 博士拿出了他最近发 ...
- 【水滴石穿】react-native-ble-demo
项目的话,是想打开蓝牙,然后连接设备 点击已经连接的设备,我们会看到一些设备 不过我这边在开启蓝牙的时候报错了 先放作者的项目地址: https://github.com/hezhii/react-n ...