当前位置: 澳门新濠3559 > 操作系统 > 正文

进入末行模式,vi/vim只能编辑文本数据.

时间:2019-11-08 15:11来源:操作系统
进去vim :vim 文件名(假设有文件名则展开文件,若无,则开创) 手写笔记: 和讯云堂上:https://study.163.com/course/courseMain.htm?courseId=1003907006 vim是从 vi 发展出来的叁个文本编辑器。代码

进去vim :vim 文件名(假设有文件名则展开文件,若无,则开创)

手写笔记:
和讯云堂上:https://study.163.com/course/courseMain.htm?courseId=1003907006

vim是从 vi 发展出来的叁个文本编辑器 。代码补完、编写翻译及错误跳转等方便编制程序的意义特别丰盛

vim

介绍: vim的前身是 vi(Visual Interface), 文本编辑器。 vi/vim只好编辑文本数据. vim是vi的提升版本,它是叁个情势化的编辑器。它的形式有:

  • 指令情势: 也叫编辑方式,能够使用vim的下令进行理文件本编辑
  • 输入方式: 人为手动编辑内容
  • 末行方式: vim/vi内置的吩咐行接口

1.跻身后是命令情势

vim

步向插入情势:

vim使用

2.末行方式

指令格局下输入冒号,步入末行方式

:wq  (w保存,q退出)

vim的3种模式:

澳门新濠3559 1

显示屏快速照相 2018-01-14 早晨2.24.02.png

i: 插入光标前叁个字符

开发布文书件:

vim [options] [file ..]
Options:

  • 打开文件后文件处于最后风流浪漫行
    +n 张开文件处于第n行
    +/pattern: 展开文件处于第三回相配的行首

3.插入形式:

按i (光标所在地点后面插入卡塔尔国

按a (光标所在地方前面插入卡塔尔

按o(光标所在地点,往下另起风流罗曼蒂克行,实行扦插卡塔尔

按I(光标所在地方行首插入卡塔 尔(阿拉伯语:قطر‎

按A (光标所在行末插入卡塔 尔(英语:State of Qatar)

按O(光标所在地点,往上另起一行,实行扦插卡塔 尔(英语:State of Qatar)

 

风流浪漫、命令方式:

指令格局是默许格局

光标移动命令

决定上下左右:h、j、k、l
向后跳动三个字:w
前行跳动二个字:b
按段提眼眶脓肿标:{
按段下移光标:}
光标移动至当下显示器的高级中学级:shift+M
光标移动至如今荧屏的末梢风姿罗曼蒂克行:shift+L
光标文件内跳转:

1.跳到文件的终极1行:G两下]
2.跳到文件的钦点行:8G(表示跳转到文件的第8行卡塔 尔(英语:State of Qatar)
3.跳到文件的首行:1G(表示跳转到文件的第1行卡塔 尔(英语:State of Qatar)、gg两下[

翻屏:ctrl+d(向下翻半屏卡塔尔国、ctrl+u(向上翻半屏卡塔尔国、ctrl+f(向下翻风流倜傥屏卡塔 尔(英语:State of Qatar)、ctrl+b(向上翻意气风发屏卡塔尔

操作命令

删除:

删去光标后一个字符:x
剔除光标前叁个字符:X(大写)
除去光标后本行全体剧情,蕴纯钧标所在字符:D(大写)
去除光标前本行全体剧情,不包蕴光标所在字符:d0
剔除光标最初地点的字,饱方天画戟标所在字符:dw

复制:

复制的通令是y,即yank(谈到卡塔 尔(英语:State of Qatar) ,常用的授命如下:
y 在选拔v情势选定了某一块的时候,复制选定块到缓冲区用;
yy 复制整行(nyy只怕yny ,复制n行,n为数字卡塔 尔(英语:State of Qatar);
y^ 复制当前到衣裳的内容;
y$ 复制当前到行尾的开始和结果;
yw 复制二个word (nyw恐怕ynw,复制n个word,n为数字卡塔尔国;
yG 复制至档尾(nyG也许ynG,复制到第n行,比如1yG也许y1G,复制到档尾卡塔尔

粘贴:p
剪切:dd(表示剪切光标所在行)、8dd(表示今后时此刻光标所在的行发轫剪切8行卡塔 尔(英语:State of Qatar)
撤销:u
反撤销:ctrl+r
保存:shift+两下z
重新上一次操作:.(波兰语句号卡塔尔
文件缩进:两下<(向左缩进卡塔尔两下>(向右缩进卡塔尔国
公家选中:v
替换:r(替换光标所在字符卡塔尔国、R(替换光标前边全数字符)
搜索:/123(寻找文件之中的123卡塔尔、

招来到的字符中:n(下一个)、N(上一个)
替换::%s/abc/123/g(把abd替换成123)、:1,10s/abc/123/g(把第1行到第10行的abd替换成123)

I: 插入行首

情势调换

编写形式 -> 输入 方式
i: insert 在光标所在字符前边执行插入调换为输入格局
a: append 在光标所在字符前边实施插入转变为输入情势
o: open 在脚下光标所在行的底下新建大器晚成行转变为输入形式
I: 在现阶段光标所在行的行首奉行插入调换为输入方式
A:在当下光标所在行的行尾推行插入转变为输入格局
O: 在这里时此刻光标所在行的下面新建一行转换为输入方式
c:
C:

输入形式 -> 编辑格局
直接敲 ESC

编辑情势 -> 末行情势
键入冒号 :

末行格局 -> 编辑模式
直接敲 ESC

小心: 输入格局无法平素到末行格局

移动:

h :前

j :下

k:下

l:后

m:跳到西路行

L:跳到结尾生龙活虎行

G:跳到钦赐行(G前面加行数的数字卡塔 尔(阿拉伯语:قطر‎

w:今后移动三个单词

b:往前移动三个单词

gg:跳到文件的初阶

{ :往上运动生龙活虎段代码

} :往下移动风度翩翩段代码

ctrl+d:往下翻半屏

ctrl+u:往下翻半屏

ctrl+f:往上翻一整屏

ctrl+b:往下翻一整屏

 

二、编辑格局:

编辑格局是插入情势,用来写代码用的

从命令格局转变到编辑方式输入:

i:i在光标的左手插入
a:a在光标的左侧插入
o:o在光标的下水插入

澳门新濠3559 2

显示屏快速照相 2018-01-14 深夜2.09.59.png


I:I在光标的行首插入
A:A在光标的行首插入
O:O在光标的上行插入

澳门新濠3559 3

显示屏快速照相 2018-01-14 上午2.12.50.png

活动补全:ctrl+n

a: 插入光标后二个字符

闭馆文件:

在末行方式, 键入vim内建命令
:q 未编写制定退出
:q! 强制退出,不保留改革
:wq 保存退出
:x 保存退出
:w /path/to/where 将文件保留到

在命令行退出:
ZZ

删除:

x:三个叁个字符的删减(现在卡塔尔国

X:叁个叁个字符的去除(往千卡塔 尔(英语:State of Qatar)

dd:删除一整行(加上数字可去除多行卡塔尔国

d0:删除光标前本行全部内容

dw:删除光标开首前面本行的剧情(满方天画戟标一同卡塔 尔(英语:State of Qatar)

 

三、末行格局:

保存:w
退出:q
脱离不保留:q!
封存退出:wq,x
vim里执行shell下命令:!ls(实践ls命令,末行格局下输入!,前边跟命令卡塔 尔(阿拉伯语:قطر‎

A: 插入行未

光标跳转

h/l/j/k 在同风流倜傥行
以字符未单位跳转
h: 左
l: 右
j: 下
k: 上

n + h/l/j/k 跳转n个字符/行

以单词未单位跳转
w: 下三个单词的词首
e: 跳到当前单词的大概下三个单词的词尾
b: 跳到最近大概上一个单词的次首

n + w/e/b 跳转n个单词

行首行尾跳转
^: 跳之行首率先个非空白字符
0: 跳转至相对行首
$:跳转至相对行尾

以行未单位跳转
#G: 跳转至内定行, 10G 跳转至第10行, G行尾
1G: 回到行首
gg: 跳转至行首

句子之间活动:
): 下一句
(: 上一句

段落间移动:
}: 下一段
{: 上一段

撤销:

u:一步一步的废除

ctrl+r:反撤销

o: 向下新开大器晚成行,插入行首

编写制定操作

字符编辑: 编辑单个字符或是多少个字符
x: 删除光标处的单个字符
nx: 删除光标处的n个字符
XP: 交流光标所在处及其背后字符的职位

轮流命令r: 替换单个字符或是多少个字符
r: 替换光标处的单个字符
nr: 替换光标处的n个字符

去除命令: 要求指明要刨除的剧情 ,能够钦点光标跳转命令删除钦赐的字符
d:
d$:删除光标到行尾
d^: 删除光标到行首
3dw: 删除3个单词

dd: 删除光标所在的一整行
澳门新濠3559,ndd: 删除光标前面n行
D: 删除行内容留空行

潜心: 删除的内容是保留在vim的缓冲中,能够通过u命令复苏全部操作,也足以经过p命令来粘贴。

粘贴命令:
小p: 缓冲区如果存款和储蓄的整行内容,则粘贴至光标所在行的江湖,不然,粘贴至光标所在地点的末尾。
大P: 缓冲区倘使存储的整行内容,则粘贴至光标所在行的上方,不然,粘贴至光标所在地点的前边。

复制命令(yank):
用法和d命令相符
y$ 复制到行尾
y0 复制到行首
y^ 复制到行首

ye 复制贰个单词
yw
yb

ncommond 复制n块
yy 复制生龙活虎行
nyy 复制n行

更正命令(c:change)
c: 修正, 删除钦定的界定内容 从编辑方式调换成输入情势
c$:
c^:
c0:

cb:
ce:
cw:

ncommond
cc: 删除并输入新内容
ncc 删除n个

复制:

yy:复制(后面加数字可复制多行卡塔 尔(阿拉伯语:قطر‎

p:粘贴

 

O: 向上新开生机勃勃行,插入行首

可视化方式

v: 按字符选定区域
V: 按行选定区域

能够结合d,c,y,(),{}命令使用

替换:

r:替换当前字符

Escort:替换当前光标前边的字符,光标后边挪动

 

跻身命令情势:

收回编辑:

u(undo): 废除在此之前的操作
n+u: 废除编辑的次数

ctrl + r: 打消早先的吊销

查找:

/:xxx

N:上一个

n:下一个

 

末行情势下:

批量轮番:

 

ESC:从插入格局或末行格局步向命令形式

再度编辑操作

.: 点几遍就重新四次上次编辑操作

移动光标:

翻屏幕

ctrl + f: 向文件尾翻大器晚成屏
ctrl + b: 向文件首翻大器晚成屏

ctrl + d: 向文件尾巴部分翻半屏
ctrl + u: 向文件尾巴部分翻半屏

h: 左移

vim 自带教程

vimtutor

j: 下移

vim 末行情势

松手的吩咐行接口

k: 上移

地点界定

(1) : pos 定位当地方行
例如: :10 第10行

(2) : start_pos, end_pos 初始地点到完工地方
例如: :1, 100 从1到100行

(3) :start_pos, +n 从早先地方到背后的n行
例如: :1 +5 从第1行到第6行

(4).: 当前行
(5) $: 最终生机勃勃行 比如: .,$-1 当前进到倒数第二行
(6) %: 全文, 向也正是1,$

(7) /pattern1/, /pattern2/ 从第一遍被pattern1相称到的行最早到第三次被pattern2相配到的行终止,之间的全体行。
例如: #,/pat/ 从#行到相配行 /pat/$ 从相配行到最终风流倜傥行

l: 右移

编辑命令

将内容界定后,能够动用编辑命令来编排
d: 删除
y: 复制
w: path/to/where 保存钦命范围的开始和结果
r: path/from/where 将点名的文件的富有剧情插入到日前处

M: 光标移动到中等行

剧情寻找

/pattern 能够运用格局匹配 从近些日子光标所在处向文件尾查找
?pattern: 从当下光标所在处向文件首部查找
n: 与命令同方向寻觅
N: 与命令反方向找寻

L: 光标移动到荧屏最终生龙活虎行行首

找出并替换

在末行命令下使用
用法: s/要寻找的剧情/要替换的剧情/修饰符
要探求的剧情: 能够利用方式开展相称
更改的剧情: 可以行使规定内容可能1,2,.后向援用,还足以应用&引用到的整整内容
修饰符:
i: 忽视大小写
g: 全局替换, 默许情形下只替换第贰次面世的

貌似先界定范围后在利用替换

示例:

  1. 剔除文件中存有的空白符
    %s@^[[:space:]]+@@g
    %s/^[[:space::]]+//g

  2. 将文件中的甚起码叁个空白字符最初的行的行首加#号
    %s/^[[:space:]]/#&/
    %s@^[[:space:]]@#&@

G: 移动到钦定行,行号 G

vim 多文本情势

vim file1 file2 file3 ...
例如: vim /tmp/{fil1,file2,file3, file4..}

多文本间切换:
:next 下三个文件
: prev 前二个文本
: first 第一个
: last 最终贰个

: wall 保存全数
: qall 退出全数

w: 向后贰次活动三个字

窗口分隔方式

vim -o file1 file2 .... 水平分隔
vim -O file1 file2 .... 垂直分隔
ctrl + w/箭头 在窗口间切换

单文件窗口分隔
ctrl+w,s: split 水平分隔
ctrl+w,v: vertical 垂直分隔

退出: qall

b: 向前一遍活动叁个字

vim 专门的学业特色定制

布局文件中定义,长久有效
全局: /etc/vimrc
用户: ~/.vimrc

末行情势,只对现阶段进度有效

(1) 呈现行号
开启: set nu/set number
取消:set nonu /set nonumber

(2) 括号相配
开启: set showmatch / set sh
取消: set nosm

(3) 自动缩进
开启:set autoindent / set ai
取消: set noai

(4) 搜索高亮
开启: set hlsearch (high light)
取消: set nohlearch

(5) 语法高亮
启用: syntax on
关闭: syntax off

(6)忽视大小写
开启: set ic
关闭: set noic

{: 按段移动,上移

}: 按段移动,下移

Ctrl+d: 向下翻半屏

Ctrl+u: 向上翻半屏

Ctrl+f: 向下翻意气风发屏

Ctrl+b: 向上翻黄金时代屏

gg: 光标移动文件最早

G: 光标移动到文件末尾

shift+6  光标到方今进的行首

shift+4  光标到方今进的行末

去除命令:

x: 删除光标后二个字符,也就是 Del

X: 删除光标前贰个字符,约等于 Backspace

dd: 删除光标所在行,n dd 删除钦命的行数 D: 删除光标后本行全部内容,包蕴光标所在字符

d0: 删除光标前本行全部内容,不饱莫邪标所在字符

dw: 删除光标开首地点的字,蕴干将标所在字符

裁撤命令:

u: 一步一步废除

Ctrl+r: 反撤销

再一次命令:

.: 重复上二回操作的一声令下

文本行移动:

>>: 文本行右移

<<: 文本行左移

复制粘贴:

yy: 复制当前进,n yy 复制 n 行

p: 在光标所在地点向下新开拓大器晚成行,粘贴

可视格局:

v: 按字符移动,选汉语本

V: 按行移动,选闽南语本可视格局能够合营 d, y, >>, << 完成对文件块的删减,复制,左右运动

轮流操作:

r: 替换当前字符

奇骏: 替换当前行光标后的字符

搜索命令:

/: str查找

n: 下一个

N:上一个

:set hls 展开高亮:set nohls 关闭高亮

轮换命令:

把abc全体替换来123

末行形式下,将为此提出的abc替换到123

:%s/abc/123/g

末行格局下,将首先行至第10行之间的abc替换到123

:1, 10s/abc/123/g

vim里执行 shell 下命令:

末行情势里输入!,后边跟命令

放大缩写

ctrl -  缩小

ctrl shift +  放大

ubuntu vim tab 4个空格

编写文件

sudo vim /etc/vim/vimrc

在终极加上

set ts=4

set expandtab

set autoindent   假使报错,将那句话换来 %retab!

编辑:操作系统 本文来源:进入末行模式,vi/vim只能编辑文本数据.

关键词:

  • 上一篇:没有了
  • 下一篇:没有了