vim的三种模式
一般模式、编辑模式和命令模式。
1、一般模式
操作:上下移动光标、删除某个字符、删除某行以及复制或粘贴一行或多行
#cp /etc/dnsmasp.conf /tmp/1.txt(复制到/tmp目录下)
#vim /tmp/1.txt(编辑这个文件)
编辑时的操作可以有:
移动光标的位置
按键 | 作用 |
---|---|
b或者向左的方向键 | 光标向左移动一个字符 |
l或者向右的方向键 | 光标向右移动一个字符 |
k或者向上的方向键 | 光标向上移动一个字符 |
j或者向下的方向键 | 光标向下移动一个字符 |
Ctrl+B | 文本页面向前翻一页 |
Ctrl+F | 文本向后翻一页 |
数字0或者Shift+6 | 移动到本行行首 |
Shift+4 | 移动到本行行尾 |
gg | 移动到首行 |
G | 移动到尾行 |
nG | 移动到第n行 |
字符或字符串的复制、删除、粘贴
按键 | 作用 |
---|---|
x和X | x表示向后删除一个字符,X表示向前删除一个字符 |
nx | 向后删除n个字符 |
dd | 删除/剪切光标所在的那一行 |
ndd | 删除/剪切光标所在行之后的n行 |
yy | 复制光标所在 |
p | 从光标所在行开始,向下粘贴已经复制或者粘贴的内容 |
P | 从光标所在行开始,向上粘贴已经复制或者粘贴的内容 |
nyy | 从光标所在行开始,向下复制n行 |
u | 还原上一步操作 |
v | 按v后移动光标会选中指定字符,然后可以实现复制、删除 |
2、编辑模式
一般模式不能修改某个字符,如果需要修改字符,只能进入编辑模式。
按键 | 作用 |
---|---|
i | 在当前字符前插入 |
I | 在光标所在行的行首插入 |
a | 在当前字符后插入 |
A | 在光标所在行的行尾插入 |
o | 在当前行的下一行插入新的一行 |
O | 在当前的上一行插入新的一行 |
3、命令模式
在一般模式下输入:或者/即可进入命令模式,可以实现保存、替换、退出、显示行号等。
命令 | 作用 |
---|---|
/word | 在光标之后查找一个字符串word,按n向后继续搜索 |
?word | 在光标之前查找一个字符串word,按n后向前继续搜索 |
:n1,n2s/word1/word2/g | 在n1和n2行之间查找word1并替换为word2,不加g只替换每一行的第一个word1 |
:w | 保存文本 |
:q | 退出vim |
:w! | 强制保存 |
:q! | 强制退出 |
:w | 保存文本 |
:wq | 保存并退出 |
:set nu | 显示行号 |
:set nonu | 保存并退出 |
文档的压缩与打包
.gz:表示gzip压缩工具压缩的文件
.bz2:表示bzip2压缩工具的文件
.tar:表示tar打包程序打包的文件
.tar.gz:表示先tar打包,然后在由gzip压缩
.tar.bz2:表示先tar打包,然后在由bizp2压缩
.tar.xz:表示先tar打包,然后在由xz压缩
1、gzip压缩工具(不可以解压目录)
-d:该参数在解压缩时使用
-#:表示压缩等级,1为最差,9为最后,6为默认
#mkdir /tmp/test1
#cd /tmp/test1
#touch test1.txt
#echo "test gzip tool" >test1.txt(把test gzip tool的内容覆盖到文件里面)
#echo "--------test gzip tool" >>test1.txt(在text1.txt的文件里面继续追加内容)
#gzip test1.txt
2、bzip2压缩工具(不可以解压目录)
#bzip2 test1.txt
3、xz压缩工具(不可以解压目录)
#xz -z test1.txt
4、tar打包工具
可以把目录打包成一个文件,把所有的文件整合成一个大文件,方便复制或者移动。不仅可以打包目录,也可以打包文件。
-z:表示同时用gzip压缩
-j:表示同时用bzip2压缩
-J:表示同时用xz压缩
-x:表示解包或者解压缩
-t:表示查看tar包里的文件
-c:表示建立一个tar包或者压缩文件包
-f:后面跟文件名
#cd /tmp/test1/
#mkdir test2
#touch test2/test2.txt
#echo "nihao" > test2/test2.txt
#cp test1.txt test2/test2.txt
#tar -cvf test
#tar -cvf test2.tar test2(把test2目录下的文件压缩)
#tar -t test2.tar
#rm -f test2.tar
#tar -cf test2.tar test2
#tar -xvf test2.tar
#tar -cvf test2.tar --exclude 1.txt test2(排除文件)
5、zip压缩
可以压缩目录和文件,压缩目录是需要指定目录下的文件。
#zip 1.txt.zip 1.txt
#zip test1.zip test1/*
6、zcat、bzcat命令的使用
查看包
#gzip 11.txt
#bzip2 22.txt
#zcat 11.txt.gz
#bzcat 22.txt.bz2