目录
权限说明
压缩与解压缩
压缩指令:gzip
说明:linux压缩文件为.gz(gzip)格式
语法: gzip [选项] 文件名
选项:
- -r :可以将目录下的文件递归压缩
- -l :显示已经压缩文件的压缩信息
- -d :解压缩
eg:
- gzip aa.c 压缩aa.c文件
- gzip -d aa.c.gz 解压aa.c.gz
- gzip -r a 递归压缩a文件夹,将a文件夹中的所有文件进行压缩,文件夹没有变化
- gzip -dr a.c.gz 递归解压a.c.gz
注意: gunzip aa.c.gz 也可以解压扩展名是.gz的文件
注意:gzip 只针对文件,文件夹无变化
更高的压缩效率指令:bzip2
说明:压缩文件为.bz2的格式
语法: bzip2 [选项] 文件名
选项:
- -k :保留源文件
- -d :解压缩
- -f :覆盖解压(文件夹中有同名文件,用解压出来的文件覆盖同名文件)
注意: bunzip2 -f a.txt.bz2 也可以解压缩扩展名是.bz2的文件
- 总结 gzip和bzip2的区别:
- gzip可以压缩文件夹中的所有文件,bzip2不可以(待确认)
- 与gzip相比,bzip2有更高的压缩效率
gzip和bzip2压缩指令不能混用,主要通过压缩文件的扩展名区分
压缩文件或文件夹;zip
说明:文件的后缀名是.zip
语法: zip [选项] 压缩后的文件名 文件名/目录
选项:
-r :递归压缩,用于对文件夹的操作
注意:不带选项会保留源文件
eg:
zip love.zip love2.txt 压缩love2.txt
unzip love.zip 解压缩love.zip
zip a.zip a 压缩目录a
unzip a.zip 解压缩a.zip
zip -r a2.zip a 递归压缩目录a
unzip -r a2.zip 递归解压缩a2.zip
zip ./my/love.zip love2.txt 压缩文件到./my目录下
注意:
当解压缩时,如果有同名文件或同名文件夹,会有提示让用户选择覆盖方式:
- y :覆盖文件
- n :不覆盖文件
- A :覆盖文件夹
- N :不覆盖文件夹
- r :重命名
打包并压缩指令:tar
语法: tar [选项] 产生的文件名称 被压缩的文件或文件夹列表(用空格隔开)
选项:
- -c :打包
- -v :显示命令执行的过程
- -f :用于指定打包文件的名称
- -z :打包时压缩/解包同时解压缩,所以操作的文件扩展名为 .gz (gz说明是用的gzip)
- -x :解包
- -j :与-z类似,不过使用的是bzip2指令,扩展名为 .bz2
eg:
- tar -cvf love.tar love2.txt love.txt 打包love2.txt,love.txt文件并压缩到love.tar中
- tar -xvf love.tar 解包love.tar中的love2.txt和love.txt
总结:
sudo apt-get update // 更新软件源
sudo apt-get install vim // 安装Vim
- *.tar :用 tar -xvf 解包
- *.gz : 用 gzip -d 解压缩
- *.tar.gz :和 *.tgz 用 tar -xvzf 解压
- *.bz2 :用 bzip2 -d 解压
- *.tar.bz2 :用 tar -xvjf 解包
- *.zip :用 unzip 解压
Vim文本编辑
Vim是Linux系统中一个使用非常普遍,而且功能抢到的文本编辑器。(vi的升级版本)
Vim安装与卸载
本地安装(dpkg -i)
前提:系统中要存在下载好的安装包,并且可能还需要安装包的依赖包。
在线安装
语法:
sudo apt-get update // 更新软件源
sudo apt-get install vim // 安装Vim
卸载程序
语法:
sudo apt-get remove vim // 这个命令是写在程序,vim也可以替换成其他程序名
Vim的使用
启动
启动Vim后,此时Vim处于命令模式:
1. 系统命令行输入vim,就可以启动vim;
Zed@Li-002:~$ vim
在vim中导入待编辑的文件:
- :r 待操作文件
2. 系统命令行输入vim 待编译文件,启动vim同时打开待编译文件
说明:默认打开文件后,光标处于文件开头(第一行第一列)
Zed@Li-002:~$ vim ~/Mywork/triangle.c
3. 系统命令行输入vim 待编译文件,启动vim同时打开待编译文件
说明:默认打开文件后,光标处于文件末尾(最后一行第一列)
Zed@Li-002:~$ vim ~/Mywork/triangle.c +
4. 系统命令行输入vim 待编译文件,启动vim同时打开待编译文件
说明:默认打开文件后,光标处于指定行n(指定行n第一列)
Zed@Li-002:~$ vim ~/Mywork/triangle.c +4
退出
- 在命令模式下:ZZ(大小写)
- :q 文件不做任何修改直接退出
- :wq 保存退出
- :q! 强制退出,不保存
注意: : 英文输入法下使用 :
Vim的工作模式
- 命令模式:用户输入Vim时当做指令处理的
- 编辑(插入)模式:用户输入Vim时字符要写入文件中
- 末行模式:文件保存和退出Vim
命令模式下输入的快捷键解释:
- i ——在目前光标前插入所要输入之文字。
- a ——在目前光标后开始输入文字。
- o ——在当前光标所在行下新增一空行,并从行首开始输入文字。
- I ——插于行首。
- A ——插于行尾。
- O ——在当前光标所在行上新增一空行,并从行首开始输入文字。
Vim的常用命令
光标移动
行间移动
- gg :移动光标到第一行
- G :移动光标到最后一行
- :n :移动到第n行 eg: :6 移动光标到第6行
列间移动
- $ :移动光标到当前行的行尾。
- 0 :移动光标到当前行的行首。
删除
列(字符)删除
- x :删除当前光标所在处一个字符。
- nx :删除当前光标所在处以及后面共n个字符。写法: 6x 删除从当前光标开始6个字符
- X :删除当前光标的左边一个字符。
- D :删除当前光标至行尾。
行删除
- dd :删除当前光标所在行
- ndd :删除当前光标所在后面n行
- dG :删除当前光标所在行至文件末尾
- :n1,n2d :删除n1到n2行,写法: 1,12d 表示删除自行1至12行。
拷贝
- 列(字符)拷贝 多按几次 ESC ,然后按 v ,进入可视方式,移动方向键选中文本,然后按 y ,就拷贝完成
- 行拷贝
- yy :复制当前行
- nyy :复制当前行以下n行
- :n1,n2 copy dn :复制n1~n2 行数据后粘贴到dn行,写法: 3,14 copy 2 从第3行拷贝至第 14行,将拷贝的内容粘贴到第2行。
粘贴
- p :如果拷贝的是整行粘贴在当前行下。如果拷贝的是列(字符)粘贴在当前光标之后。
- P :如果拷贝的是整行粘贴在当前行上。如果拷贝的是列(字符)粘贴在当前光标之前。
撤销
- u :撤销上一步操作。相当于ctrl+z
- U :撤销当前行中的所有操作。
- Ctrl-r :重做撤销的操作
字符查找
- /string :从光标所在处向后寻找“string”字符串,按n可往下继续找,按N可往上查找。
- ?string :从光标所在处向前寻找“string”字符串,可按N向下继续找,按n向上查找
- :set ic :查找时忽略大小写,举例,查找 f ,匹配 f+F
- :set noic :查找时对大小写敏感,举例,查找 f ,匹配 f
请注意::set ic和:set noic 必须要在文本查找之前进行。
字符替换
- :%s /old/new :将全文每一行第一个匹配项old 替换成new。
- :%s /old/new/g :全文替换old为new
- :n1,n2s /old/new/g :在n1~n2行间替换old为new
其他常用指令
- :set nu :设置行号 :set nonu
- :设置取消行号 ctrl+g
- :显示文件名,当前的行号,文件的总行数和文件位置的百分比。