(补第三天权限)
权限说明
权限的类型 | 权限的数值 | 普通文件 | 目录(文件夹) |
r:可读 | 4 | cat,less,more等 | ls |
w:可写 | 2 | >(覆盖插入),>>(追加插入),touch | mkdir,rmdir,rm |
x:可执行 | 1 | ./文件名(执行文件) | cd |
-:无权限 | 0 | 无操作 | 无操作 |
压缩与解压缩
压缩命令
说明:linux压缩文件为 .gz(gzip)格式
语法:gzip [选项] 文件名/目录
选项:
-r:可以将目录下的文件递归压缩
-l:显示已经压缩文件的压缩信息
-d:解压缩
eg:gzip aa.c 压缩aa.c文件
gzip -d aa.c.zg 解压aa.c.gz
gzip -r a 递归压缩a文件夹,将a文件夹中的所有文件进行压缩,文件夹没有变化
gzip -dr aa.c.gz 递归解压a文件夹中所有的文件
注意:gunzip.aa.c.gz 也可以解压扩展名是.gz的文件
注意:gzip 只针对文件,文件夹无变化
更高的压缩效率指令:bzip2
说明:压缩文件为.bz2的格式
语法:bzip2 [选项] 文件名
选项:
-k:保留源文件
-d:解压缩
-f:覆盖解压(文件夹中有同名文件,用解压出来的文件覆盖同名文件)
注意:bunzip2 -f a.txt.bz2 也可以解压缩扩展名是.bz2的文件
总结
gzip和bzip2的区别:
1.gzip可以压缩文件夹中的所有文件,bzip2不行
2.与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 递归压缩目录
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
总结:
1. *.tar :用tar - xvf 解包
2.*.gz :用gzip -d 解压缩
3.*.tar.gz 和 *.tzg :用tar -xvzf解压
4. *.bz2 :用bzip2 -d解压
5. *.tar.bz2 :用tar -xvjf解包
6. *.zip :用unzip解压
VIM文本编辑
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后,此时Vim处于命令模式:
1.系统命令行输入vim,就可以启动vim;
yueqian@yueqian -vm:~$ vim
在vim中导入待编辑的文件:
:r 待操作文件
2.系统命令行输入vim待编译文件,启动vim同时打卡待编译文件
说明:默认打开文件后,光标处于文件的开头(第一行第一列)
3.系统命令行输入vim待编译文件,启动vim同时打卡待编译文件
说明:默认打开文件后,光标处于文件的末尾(最后一行第一列)
4.系统命令行输入vim待编译文件,启动vim同时打卡待编译文件
说明:默认打开文件后,光标处于指定的行n(指定行n第一列)
退出
1.在命令模式下,ZZ(大小写,用大写)
2. :q 文件不做任何修改直接退出
3. :wq 保存退出
4. :q! 强制退出不保存
注意: : 英文输入法下用 shift+:
Vim的工作模式
1.命令模式:用户输入Vim时当做指令处理的
2.编辑(插入)模式:用户输入Vim时字符要写入文件中
3.末行模式:文件保存和退出Vim
命令模式下输入的快捷键解释:
Vim的常用命令
光标移动
• 行间移动
• gg:移动光标到第一行
• G:移动光标到最后一行
• :n:移动到第n行,写法: :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行
粘贴
p:如果拷贝的是整行粘贴在当前行下,如果拷贝的是列(字符)粘贴在当前光标之后
p:如果拷贝的是整行粘贴在当前行上,如果拷贝的是列(字符)粘贴在当前光标之前
撤销
u:撤销上一步操作。相当于ctrl+z
U:撤销当前行中的所有操作。
ctrl-r:重做撤销的操作。
字符替换
/stirng:从光标所在处向后寻找“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:显示文件名,当前的行号,文件的总行数和文件位置的百分比。