linuxvi操作命令

author author     2023-04-14     497

关键词:

我想获得经常用的vi操作命令

进入vi的命令
vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个和pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次进行编辑
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字至字尾
) :光标移至句尾
( :光标移至句首
:光标移至段落开头
:光标移至段落结尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾
屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
S:删除指定数目的行,并以所输入文本代替之
ncw或nCW:修改指定数目的字
nCC:修改指定数目的行
删除命令
ndw或ndW:删除光标处开始及其后的n-1个字
do:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带“”的特别字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
mesg:允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行
寄存器操作
"?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
"?p:取出寄存器?中的内容并将其放到光标位置处。这里?能是个字母,也能是个数字
ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。
进入vi
vi test
离开vi
:q! 离开vi,并放弃刚在缓冲区内编辑的内容。
   :wq 将缓冲区内的资料写入磁盘中,并离开vi。
   :ZZ 同wq
同wq
:w 将缓冲区内的资料写入磁盘中,但并不离开vi。
  :q 离开vi,若文件被修改过,则会被需求确认是否放弃修改的内容,此指令可和: w 配合使用。
Vi 的操作模式
Vi 提供两种操作模式:
输入模式(insert mode)
指令模式(command mode)
当使用者进入vi后,既处于指令模式下,此刻键入所有字元皆被视为指令。
输入模式:a(append) 游标之后加入资料。
A 该行之末加入资料
i (insert) 游标之前加入资料
I 该行之首加入资料
o (open) 新增一行和该行之下供输入资料
O 新增一行和该行之上供输入资料
指令模式:B      移至该行第一个字符,若光标在该行第一字符则光标移至上一行第一字符。
   b    由游标所在位置之前一个字串的第一个字元
     cc 删除整行,修改整行的内容。
     D      以行为单位,删除游标在内后面的所有字符。
db 删除该行光标前字符
     dd 删除该行
     de 删除自光标开始后面的字符
     d加字符   删除光标所在位置至字符之间的单
     E      移至该行最后字符,若光标在该行最后字符则光标移至下一行最后字符
 e      由游标所在位置至该字串的最后一个字元
     G 移至该档案的最后一行 
     h 向前移一个字元
j 向下移一个字元
k 向上移一个字元
0 移至该行之首
M 移至视窗的中间那行
L 移至视窗的最后一行
     l 向后移一个字符
0 由游标所在位置该行的第一个字元
nG 移至该档案的第n行
n+ 自游标所在位置向后移n行至该行的第一字符
n- 自游标所在位置向前移n行至该行的第一字符
R 进入取代状态,直到《ESC》为止
s 删除游标所在字元,并进入取代模式直到《ESC》
S 删除游标所在之该行资料,并进入输入模式直到《ESC》
w 由游标所在位置之下一个字串的第一个字元
x 删除游标所在该字元。
X 删除游标所在之前一字元。
r 用接于此指令之后的字元取代(replace)游标所在字元
yy yank整行,使游标所在该行复制到记忆体缓冲区
显示该行之行号、档案名称、档案中最末之行号、游标所在行号占
总行号之百分比
$ 由游标所在位置至该行的最后一个字元。
) 由游标所在位置至下一个句子的第一个字元。
( 由游标所在位置至该句子的第一个字元。
由游标所在位置至该段落的最后一个字元。
由游标所在位置至该段落的第一个字元
yank和delete可将指定的资料复制到记忆体缓冲区,而藉有put指令可将缓冲区内的资料复制到荧幕上
例如:搬移一行 :在该行执行dd
游标移至目的地
执行p
复制一行 :在该行执行yy
游标移至目的地
执行p
视窗移动:
视窗往下卷一页
视窗往上卷一页
视窗往下卷半页
视窗往上卷半页
视窗往下卷一行
视窗往上卷一行
删除、复制及修改指令介绍:
d(delete)、c(change)和y(yank)这一类的指令在vi 中的指令格式为:
operation+scope=command
(运算子)(范围)
运算子:
d 删除指令。删除资料,但会将删除资料复制到记忆体缓冲区。
y 将资料(字组、行列、句子或段落)复制到缓冲区。
p 放置(put)指令,和d和y配合使用。可将最后delete或yank的资料放置于游标所在位置之行列下。
c 修改(change)指令,类似delete于insert的组合。删除一个字组、句子等资料,并插入新键入的
参考技术A 去百度搜一下吧,在这里复制的也是百度里找出来的东西。

关于linuxvi命令

我用了vi1.c出现了下面的情况~~~~~~~~~~~~~~~~~~~~~~"1.c"[NewFile]然后很长时间没有反应,这是什么意思呢谢谢vim命令总结1.删除字符要删除一个字符,只需要将光标移到该字符上按下"x"。2.删除一行删除一整行内容使用&quo... 查看详情

linuxvi操作命令

我想获得经常用的vi操作命令进入vi的命令vifilename:打开或新建文件,并将光标置于第一行首vi+nfilename:打开文件,并将光标置于第n行首vi+filename:打开文件,并将光标置于最后一行首vi+/patternfilename:打开文件,并将光标置于第... 查看详情

linuxvi命令删除行

使用vi命令进行删除dd --删除当前行ndd --删除n行数据dG --删除当前后之后的全部行 查看详情

linuxvi命令大全

linuxvi命令大全进入vi的命令vifilename:打开或新建文件,并将光标置于第一行首vi+nfilename:打开文件,并将光标置于第n行首vi+filename:打开文件,并将光标置于最后一行首vi+/patternfilename:打开文件,并将光标置于第一个与pattern匹... 查看详情

linuxvi命令的使用方法有哪些?

vi的基本概念  基本上vi可分为三种操作状态,分别是命令模式(Commandmode)、插入模式(Insertmode)和底线命令模式(Lastlinemode),  各模式的功能区分如下:  1.Comandmode:控制屏幕光标的移动,字符或光标的删除,移动复制某区... 查看详情

linuxvi命令怎么变换全文首字母的大小写

参考技术Avim可以用下面的命令来将首字母大写,vi不行。:s/\w\+/\u\0/g首字母小写:s/\w\+/\l\0/g 参考技术B输入gg~追问怎么改变全文的首字母 查看详情

linuxvi编辑器的模式分为哪三种?

参考技术A  Linux系统中vi是什么?vi是Linux/Unix系统中一款著名的编辑软件,也是Linux系统中第一款全屏幕编辑软件,凭借功能强大、高度可定制、简单易用的优势为广大Linux用户所熟悉,也成为Linux运维人员必备技能之一。接下来... 查看详情

linuxvi怎么编辑器删除多行与复制命令

首先需要按ESC键回到命令模式;vi保存文件有不同的选项,对应于不同的命令,你可以从下面的命令中选择一个需要的输入::wq保存文件并退出vi:w保存文件但不退出vi:wfile将修改另外保存到file中,不退出vi:q不保存文件,退出vi最... 查看详情

linuxvi下查看文件不区分大小写命令

1.linuxvi下查看文件不区分大小写命令2.Linux登录命令是什么?3.Linux如何创建一个空文件补充第一个问题:假如文件中有一个叫HELLO的字符串,因为Linux是区分大小写的,就是说可以输入hello(小写)来查看查看目录lllsls-l长格式,... 查看详情

linuxvi编辑器如何复制整行n内容,这样才能粘贴到文本中

例如我要将第三行内容,粘贴到第十五行应该怎么操作,请给详细操作步骤,谢谢参考技术A1.进入你的文件,(处于命令模式,而不是编辑模式)2.将你的光标移到你的第三行的开头(用方向键)3,按下v,(你发现切换到可视模... 查看详情

linuxvi使用技巧

导入命令执行结果:r!命令,例如:导入已经存在的文件内容到当前文件导入命令执行的结果到当前文件定义快捷键,map快捷键触发命令,例如:map^PI#<ESC>(使用CRTL+P进行快速注释,其中^需要同时按CRTL+V+P或先按CRTL+V,再按C... 查看详情

ssh中linuxvi编辑文档的问题

第一天用linux的菜鸟求助:在ssh中使用vi命令编辑文档,不知道应该怎么删除文字,按backspace和delete都没用,而且敲字母只会改变格式。。。。不知道是不是要先按什么键才能编辑呢?参考技术A第一次使用肯定感觉有点麻烦vi这... 查看详情

linuxvi编辑器问题

你运行命令想要达到什么目的?vi是个交互式编辑器,而交互式编辑的特点在于不能重定向如果用vi的命令行版本那么格式是vifilename,如果file不存在,则自动创建一个名字为filename的新文件直接运行vi则进入vi界面,当然什么都没... 查看详情

linuxvi的三种工作模式及转化过程

Vi有三种基本的工作模式:指令行模式、文本输入模式、行末模式。他们的相互关系如所示。指令模式(CommandMode)下输入a、i、o进入文本输入模式(InputMode)文本输入模式(InputMode)下按ESC进入指令模式(CommandMode)指令模式(CommandMode... 查看详情

linuxvi保存退出命令(如何退出vi)

1.如图,vi文件名,接着按回车即可打开对应的文件,如果没有对应的文件,那么vi命令就会自动创建一个新的。2.如图,vi打开文件后是命令模式状态,要用i或者a命令才可进入可编辑的状态哟。这里我就按a进入了编辑模式了哦... 查看详情

linuxvi进入编辑模式后使用方向键的时候,并不会使光标移动,而是在命令行中出现abcd四个字母

在linux下,初始使用Vi的时候有两个典型的问题:1、在编辑模式下使用方向键的时候,并不会使光标移动,而是在命令行中出现A、B、C、D四个字母;2、当编辑出现错误,想要删除时,发现Backspace键不起作用,只能用Delete键来删... 查看详情

linuxvi不能保存文件

Can'topenfileforwriting,而drwx------14lingling4096Nov1420:06ling我的权限不是可写可读吗?Linux系统vi编辑只读文档无法保存的解决办法,使用普通用户编辑nginx.conf等配置文件:保存的时候会提示:没有RootPermission可以用如下方法解决:保... 查看详情

linuxvi编辑器如何复制整行n内容,这样才能粘贴到文本中

例如我要将第三行内容,粘贴到第十五行应该怎么操作,请给详细操作步骤,谢谢在VI命令模式下输入:1,3G(切换到第3行)2,yy(复制整行)3,15G(切换到第15行)4,P(粘贴)参考资料:http://www.92linux.tk参考技术A1.进入你的文件,... 查看详情