vim程序编辑器;管理输入输出

上一篇稍微提了一下vim编辑文件的基本方法:

“vim 文件名”   之后会进入这个文件内容的浏览模式,然后按"i"键 进入插入模式(左下角会出现-INSERT-的字样)后就可以编写内容了,编写结束后按"ESC"键 退出插入模式,最后按":wq" 保存并退出就可以了(编写时用上下左右键控制鼠标位置)

接下来具体介绍vim编辑器的其他操作

1.vim工作方式设定

:set nu                   #添加行号
:set nonu              #不加行号
:set cursorline      #加下划线

:set mouse=a      #可使用鼠标

在vim中直接设定vim的工作方式是临时设定,也就是说当vim关闭,设定失效

如果要永久设定需要编写"/etc/vimrc"这个文件也是vim的配置文件

2.vim快捷键

按"x":删除光标所在字符

按"u":undo 恢复
按"ctrl+r": redo 撤销恢复

按"y":复制

   "yw"          ##复制一个单词

    "yl"          ##复制一个字母
    "yy"         ##复制一整行
    "y5y"       ##复制5行
"c":剪切
    "cw"        ##剪掉一个单词
    "cl"         ##剪掉一个字母
    "cc"        ##剪掉一整行
    "c5c"      ##剪掉5行
    当用C做剪切时,会进入插入模式,如果要粘贴需要退出插入模式按<ESC>再按P
"d":删除    "dw"        ##删除一个单词
    "dl"             ##删除一个字母
    "dd"           ##删除一整行
    "d5d"         ##删除5行

"p":粘贴

3.vim的可视化操作

1)可视化模式的基本操作

在vim中鼠标不能操作,如果要操作某个区域,需要在命令模式下 "ctrl + v" ,按"上|下|左|右"移动光标选择区域,按相应操作键就可以对选择区域进行操作

 

2)可视化模式下批量添加字符

1.把光标停留在想要加入字符所在的列的第一行

2.移动光标选择添加字符所在列

3.按"shift+i"进入插入模式,写入要插入的字符

5.按"ESC"退出插入模式


4.vim的字符替换


%s/原有字符/新字符/g          #全文替换

1,5s/原有字符/新字符/g        #替换1到5行的字符

注意:加“g”替换出现的所有关键字,如果不加"g"只替换每行出现的第一个

5.vim总字符的查找及光标的移动

1)字符的查找

格式:/关键字
n            ##向下匹配关键字
N            ##向上匹配关键字

2)光标的移动

数字         ##光标快速移动到指定行

gg             ##光标移动到文件的第一行
G              ##光标移动到文件的最后以行
6.vim同时编辑多个文件
1)格式::sp   filename
ctrl + w   上        #光标进入上边文件窗口

ctrl + w   下        #光标进入下边文件窗口


2)插入模式
"i"            #在光标所在位置插入字符
"I"            #光标所在行的行首插入字符
"o"            #光标所在行的下一行新行插入字符
"O"            #光标所在行的上以行新行插入
"s"            #删除光标所在字符并插入字符
"S"            #删除光标所在行并插入字符
"a"            #光标所在字符的下一个字符插入
"A"            #光标所在行的行尾插入字符

3)退出模式

:q        #当vim进入文件没有对文件内容做任何操作可以按"q"退出

:q!        #当vim进入文件对文件内容有操作但不想保存退出
:wq        #正常保存退出

:wq!        #强行保存退出,只针对与root

注意:如果文件名称存在,那么进入文件直接编辑,当文件名称不存在,vim会在退出保存时自动建立文件
当vim命令后没有跟任何文件名称时,无法实现":wq"退出保存的,那么可以用":wq 文件名"

当vim异常退出时,系统会建立.file.swp这个缓存文件,这个文件中保存着没有":wq"动作保存的信息,当用vim对文件做编辑的时候会提示

  O    #只读打开

  E    #直接忽略.file.swap信息编辑文件
  R    #利用.file.swap进行为保存数据恢复
  D    #删除.file.swap
  Q    #退出
  A    #终止


7.管理输入输出

1)管理输入

多行录入格式:

            cat  >>文件名  <<起始标示

            >内容

            >内容

            >起始标示


密码修改格式:

passwd   <<起始标示

>新密码

>再输入新密码

>起始标示

起始标示需要前后一致,这样才能结束输入,

2)重定向输出

标准的输出会把正确和错误的数据都显示在屏幕上,这样屏幕就显得很混乱,分析起来也是很不方便的,重定向输出会将正确和错误的数据分别传送到不同文件或设备,接下来介绍一下重定向输出

>        #重定向正确输出

正确的已经保存到文件中,错误的显示出来

2>        #重定向错误输出


&>        #重定向所有输出

上面是正确和错误数据存入同一个文件中,如果想要正确和错误的数据分别存入不同文件呢,来举个例子:

这样就可以了,正确和错误的数据已经分别保存到不同文件,此刻屏幕上不会显示任何信息哦

/dev/null是垃圾桶黑洞设备,如果想要屏蔽错误输出,可以将它导入/dev/null


屏幕显示正确输出,错误的被丢弃了

所以说,重定向输出还是很有帮助的

注意:输出所导入的文件若不存在,系统会自己建立,如果存在的话,系统会先将这个文件的内容清空,然后再导入,也就是说,> , 2> , &> 都会覆盖文件原来内容,如:

文件原来的内容"hello world"被覆盖了!

那么如果要保留原来内容,就要用追加输出>>

3)追加输出

>>          ##追加正确输出

2>>        ##追加错误输出

&>>        ##追加所有输出

当文件不存在,系统会自己建立,若存在,数据会追加到文件原来内容的后面

例如追加正确输出:

文件原来内容"hello world"依然存在并追加了正确输出!

4)管道

把输出变成下一个程序的输入,管道是用来组合多条命令的使用的,它仅能处理前面命令传来的正确信息,对于错误信息没有直接处理的能力

如:ls /bin | wc -l


注意:通过管道后输出会变成输入,前面的输出是无法保存的,要保存输出则要用到tee命令

tee        #复制输出到指定位置

tee可以将输出显示在屏幕上并复制一份到指定文件,这样不仅方便我们分析,还可以保留数据方便以后查看

如:ls /bin | tee file | wc -l

然后"cat file" ,输出保存到了文件中

2>&1        #把错误输出的编号由2转换为1

编号为2的错误命令是不能被管道直接处理的,要把错误输出编号由2转换成1,如:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值