1、文件的压缩和解压
注意:在对文件进行压缩的时候,压缩文件会把源文件覆盖,解压同理
以下所有的文件名都以file.txt代替
主要有以下三种:
1.1 .gz:
压缩:
gzip file.txt---结果--> file.txt.gz
解压:
gunzip file.txt.gz ---结果--> file.txt
1.2 .bz2
压缩:
bzip2 file.txt---结果--> file.txt.bz2
解压:
bunzip2 file.txt.gz ---结果--> file.txt
1.3 .xz
压缩:
xz file.txt---结果--> file.txt.xz
解压:
unxz file.txt.gz ---结果--> file.txt
2、文件的归档
归档:对批量文件进行打包,归档的对象是目录
注意:归档之后,源文件依旧存在,回生成新的文件
命令:tar 选项 归档后的文件名 目录
示例: tar -cvf test.tar test
主要由如下一些选项:
归档并压缩:
-c:创建归档(打包)
-v:显示归档的过程
-f f后面固定跟随归档后的文件名
-z 归档并压缩为.gz的文件
-j 归档并压缩为.bz2的文件
-J 归档并压缩为.xz的文件
归档并解压:
-x:解压
-v:显示归档的过程
-f f后面固定跟随归档后的文件名
-z 拆包并解压为.gz的文件
-j 拆包并解压为.bz2的文件
-J 拆包并解压为.xz的文件
万能拆包 tar - xvf 归档后的文件名
注意:选项中f放在最后,其他选项位置随机
3、文件的查看
cat filename 查看文件的内容
cat -n filename 查看文件的内容自带行号
head -num filename 查看文件的前num行
tail -num filename 查看文件的后num行
more/less filename 以一种比例的方式查看文件,适合较大的文件
4、文件的重定向和追加
> 重定向:
将查询出来的结果放在一个文件中去
示例:
cat /etc/passwd > test.txt
将etc/passwd的文件内容查询出来,复制到test.txt文件中
注意:
如果test文件不存在,则会在当前目录下创建一个test文件,如果test文件存在,则会把里面的内容覆盖
>> :追加
将查询结果添加到文件的末尾
示例:
cat /etc/passwd >> test.txt
如果test文件不存在,则会在当前目录下创建一个test文件,如果test文件存在,则会在test.tx文件中的末尾添加内容
5、字符串的搜索
命令:
grep "string" 文件名 选项
其中,string是你要查询的字符串的内容,文件名则是你要查询的字符串所在的文件
选项:
-n 查询结果带行号
-i 不区分大小写的查询
-R 递归查询(给一个目录名,在目录下的所有文件中进行查询)
-w:如果查询的字符串前后还有其他字符,则查不到
注意:选项可以多个结合在一起使用
eg:
grep "str" test.txt -ni //表示在test.txt中搜索str,不区分大小写,结果显示行号
6、查找文件
find 路径 -name filename
示例:
sudo find / -name stdio.h
7、字符串的提取
cut -d '分割符' -f 提取位置 文件名
示例:
cut -d ':' -f 1,4 /etc/passwd
: 是分割符
1,4:提取的位置,第1和第4的位置
/etc/passwd: 文件名
8、修改文件的权限
文件权限的分类:
用户的权限(u)
组的权限(g)
其他用户的权限(0)
a则代表上述的三个权限总和
文件的权限:
读 w
写 r
可执 行 x
其对应的八进制分别是:
r -- 4
w -- 2
x -- 1
故一个文件的最高权限为:0777
chmod 0777 filename 给一个文件赋予最高权限
chmod 0666 filename 给一个文件赋予读写的权限
chmod a+x file.txt // 将file.txt的权限所有者都赋予可执行文件
chmod uo-x file.txt //将用户和其他的权限去掉可执行文件
chmod u+rw file.txt // 将file.txt的用户权限赋予读和写的权限
修改一个文件所在的用户:
eg:
chown root file.txt
// 将file.txt的用户名修改为root
修改一个文件所在的组:
eg:
chgrp root file.txt
// 将file.txt的组名修改为root