本文共 4037 字,大约阅读时间需要 13 分钟。
1.##########vim的常用功能#########
<1.vim的模式
命令模式 | 浏览文件,临时更改vim的工作方式,对字符批量处理 |
---|---|
插入模式 | 对文件内容进行编辑 |
退出模式 | 退出vim程序 |
命令模式
<一.命令模式>
1)调整vim的工作方式: 在vim程序中:set 调整参数
示例:
:set nu ##在每一行前显示行号注意:
在vim程序中设定的vim工作方式是临时的(进程id是不同的,所使用的内存资源是不一样的),所以在vim关闭后会还原如果要永久保存vim的工作方式需要编辑vim的配置文件==:/etc/vimrc==
在/etc/vimrc下加入你要设定的工作方式可新建一个文件,试图利用vim进入程序编辑框查看效果,可以看到和之前增加的命令相匹配的显示,说明已经永久的设定了vim的工作方式。
2)字符的搜索:
/关键字 /后面的关键字会被搜索然后高亮显示出来
例如:当输入/h的时候,程序编辑框内所有的“h”都会高亮显示出来
3)字符的管理
y 字符的复制yl | 复制一个字母 |
---|---|
y3l | 复制3个字母 |
yw | 复制一个单词 |
y3w | 复制3个单词 |
yy | 复制1行 |
y3y | 复制3行 |
例子:刚开始的文本
d 字符的删除
dl | 删除一个字母 |
---|---|
d3l | 删除3个字母 |
dw | 删除1个单词 |
d3w | 删除3个单词 |
dd | 删除1行 |
d3d | 删除3行 |
刚开始的文本
c 字符的剪切
cl | 剪切1个字母 |
---|---|
c3l | 剪切3个字母 |
cw | 剪切1个单词 |
c3w | 剪切3个单词 |
cc | 剪切1行 |
c3c | 剪切3行 |
p ##粘贴u ##撤销ctrl+r ##恢复撤销
刚开始的文本
注意:
<1>在剪切之后vim会进入插入模式,如果要粘贴需要按【esc】退出插入模式,然后按p粘贴" <2>输入按键时,一个一个按下4)vim可视化模式
ctrl + v ##在这个模式下可以选择区域操作(可以看到左下角出现了VISUSL BLOCK,即表示进入了vim可视化模式)
批量添加字符:
ctrl + v 选中要加入字符所在的列(按上下左右键进行批量选择) 按大写的I 加入字符 按【esc】
5)字符的替换
:%s/要替换的字符/替换成的字符/g :%s/:/@/g ##替换全文的:为@ :1,5s/:/@/g ##替换1-5行的:为@
刚开始的文本:
6)vim 的分屏功能
ctrl+w s | 上下分屏 (先同时按下ctrl+w 松开在按s) |
---|---|
ctrl+w v | 左右分屏 |
ctrl+w c | 关闭光标所在屏幕 |
ctrl+w 上下左右 | 光标移动到指定屏幕 |
ctrl+w s 上下分屏
ctrl+w c 关闭光标所在屏幕
:sp file2 ##同时编辑当前文件和file2 ((按下esc再用:wq退出)
同时编辑文件test和文件file
<二.>插入模式
1)插入模式下光标的移动i | 光标所在位置插入 |
---|---|
I | 光标所在行行首插入 |
o | 光标所在行下一行插入 |
O | 光标所在行的上一行插入 |
a | 光标所在字符的下一个字符插入 |
A | 光标所在行的行尾插入 |
s | 光标所在字符删除并插入 |
S | 光标所在行删除并插入 |
<三>.vim的退出模式
:q | 退出,在文件内容没有被改变时使用 |
---|---|
:wq | 退出保存 |
:q! | 强制退出不保存,在改变文件后不想保存时使用 |
:wq! | 强制退出保存,在对只读文件编写时使用。注意,所编辑的只读文件必须是当前用户的文件,或者当前操作的用户是root |
二.系统中输入输出的管理
1.理解系统的输入输出
运行一个程序时,需要从某个位置读取输入信息,然后cpu处理,最后将输出显示到屏幕或者文件。进程通过文件描述的编号通道来获取输入并输出。
编号 | 通道名称 | 描述 | 默认连接 | 用法 |
---|---|---|---|---|
0 | stdin | 标准输入 | 键盘 | 仅读取 |
1 | stdout | 标准输出 | 显示屏 | 仅写入 |
2 | stdeer | 标准错误 | 显示屏 | 仅写入 |
2.管理输入输出的符号
输出重定向
> | 重定向正确输出 |
---|---|
2> | 重定向错误输出 |
&> | 重定向所有输出 |
>file | 清空file |
注意:
重定向会覆盖原文件内容 例如:date会将原本file内容覆盖find /etc/ -name passwd 在/etc目录下寻找passwd文件
find /etc/ -name passwd > file ##定向正确输出到file
find /etc/ -name passwd 2> file ##定向错误输出到file
find /etc/ -name passwd &> file ##定向所有输出到file
> file ##清空file
输出追加
>> | 追加正确输出到文件最后 |
---|---|
2>> | 追加错误输出到文件最后 |
&>> | 追加所有输出到文件最后 |
注意:
追加不会覆盖源文件内容示例:
find /etc/ -name passwd >> file ##追加正确输出到file
find /etc/ -name passwd 2>> file ##追加错误输出到file
find /etc/ -name passwd &>> file ##追加所有输出到file
16.##########管道的应用########
1.管道的作用“|” ###管道的作用是把前一条命令的输出变成后一条命令的输入
注意:
管道只允许正确输出通过 通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的 如果需要保存输出内容,那么需要复制一份输出,用到的命令是==“tee”==此实验在普通用户下操作:
find /etc/ -name passwd | wc -l ##会看到的结果为2,因为错误输出不能通过管道
find /etc -name passwd 2>&1 | wc -l ##会看到19,因为编号为2的输出 被“2>&1”转换为编号1
find /etc -name passwd 2>&1 | tee file | wc -l ##保存一份输出到file再统计行数
输入重定向的意思是平常在命令行输入的内容不必很繁琐的一步步输入,只需要将其写入文件中,执行此文件便可
例如:用输入重定向同时执行passwd cal date命令先建立一个file.sh文件,并在插入模式写入以下内容
注意:
1.<<之后的字符表示开始,当再次出现相同的字符时,停止输入,可以自定义字符 2.sh是对脚本进行调用解析,sh记录命令。随堂测试:
5.在student用户下查找/etc/passwd文件,正确输出保存到/tmp/westos.out错误输出保存到/tmp/westos.err
转载地址:http://mvjvb.baihongyu.com/