tar | 打包 | 压缩 | 文件搜索 | 常用命令(二)

1.打包、压缩和解压缩

在网络传输的过程中通常要将文件经行打包,压缩和解压缩,接下来看看Linux下的一些常用的命令!
1)ta命令:
tar打包命令,用来归档文件。归档是将多个文件合并成一个文件,归档操作不会减少文件大小,它只是将文件合并到一个文件中,方便管理和传输。而压缩 : 是将一个大文件通过某些压缩算法变成一个小文件。
tar本身不支持压缩,但是通过指定选项和压缩工具结合可以完成打包和压缩的功能。

xiyan@LAPTOP-87PRR6K8:~$ mkdir package
xiyan@LAPTOP-87PRR6K8:~$ cd package
xiyan@LAPTOP-87PRR6K8:~/package$ pwd
/home/xiyan/package
xiyan@LAPTOP-87PRR6K8:~/package$ touch file{1,2,3,4}.txt
xiyan@LAPTOP-87PRR6K8:~/package$ ls
file1.txt  file2.txt  file3.txt  file4.txt

使用tar命令对上面的文件进行归档。用法:tar [选项] [归档文件名] [文件或目录列表]

xiyan@LAPTOP-87PRR6K8:~/package$ tar -cvf file.tar .
或
xiyan@LAPTOP-87PRR6K8:~/package$ tar -cvf file.tar file1.txt file2.txt file3.txt file4.txt
选项:
	c 建立一个压缩文件(create)
	v 压缩的过程中显示文件
	f 使用档名,请留意,在 f 之后要立即接档名

查看归档中的内容,不解包

xiyan@LAPTOP-87PRR6K8:~/package$ tar -tf file.tar
选项:
	t 查看 tarfile 里面的文件

追加文件到归档中

xiyan@LAPTOP-87PRR6K8:~/package$ touch file5.txt
xiyan@LAPTOP-87PRR6K8:~/package$ tar -rvf file.tar file5.txt
选项:
	r 追加文件到归档末尾

解包,如果包中的很多文件,可以创建一个目录去解包(一般来说打包的时候应该将文件放到一个目录下,自己创建指定目录解包是一个好习惯,避免别人打包不规范。),而不是在自己的工作目录去解包,不然导致自己的工作目录很乱。

xiyan@LAPTOP-87PRR6K8:~/package$ tar -xvf file.tar
选项:
	x 解开一个压缩文件
	C 解压到指定目录

打包并压缩

xiyan@LAPTOP-87PRR6K8:~/package$ ls
file1.txt  file2.txt  file3.txt  file4.txt  file5.txt
xiyan@LAPTOP-87PRR6K8:~/package$ tar -zcvf file.tar.gz .
选项:
	z 使用 gzip 压缩或解压缩
	j 使用 bzip2 压缩或解压缩

解包并解压缩

xiyan@LAPTOP-87PRR6K8:~/package$ tar -zxvf file.tar.gz

2)zip/unzip,rar/unrar
在Linux中以.tar.gz .tar.bz2 结尾的压缩文件是很常见的,如果要解压Windows中以.zip.rar 结尾的压缩文件,就要要到unzip和unrar命令。

xiyan@LAPTOP-87PRR6K8:~/package$ ls
file1.txt  file2.txt  file3.txt  file4.txt  file5.txt
xiyan@LAPTOP-87PRR6K8:~/package$ zip -r file.zip .
Command 'zip' not found, but can be installed with:
sudo apt install zip
xiyan@LAPTOP-87PRR6K8:~/package$ sudo apt install zip
xiyan@LAPTOP-87PRR6K8:~/package$ zip -r file.zip .
选项:
	r 递归处理,将指定目录下的所有文件和子目录一并处理
	
xiyan@LAPTOP-87PRR6K8:~/package$ unzip file.zip -解压缩
2.搜索文件相关命令

1)which命令:用来查找可执行文件的位置,它会在系统的环境变量下找。

xiyan@LAPTOP-87PRR6K8:~$ which ls
/usr/bin/ls
xiyan@LAPTOP-87PRR6K8:~$ which python3
/usr/bin/python3

2)locate 使用系统的文件数据库(通常每日更新一次)来快速查找文件,是最快速的查找工具。

locate 文件名

3)whereis 用于查找命令的可执行文件、源代码和手册页的位置

xiyan@LAPTOP-87PRR6K8:~$ whereis gcc
gcc: /usr/bin/gcc /usr/lib/gcc /usr/share/gcc /usr/share/man/man1/gcc.1.gz

4)find(灰常重要) 用于在文件树种查找文件,并作出相应的处理。find的用法非常多,这里演示按照名字查找。

find 路径 -name "文件名"
xiyan@LAPTOP-87PRR6K8:~$ find /home/xiyan/ -name *.c

5)grep在文件中搜索字符串,将找到的行打印出来。通常配合管道来使用。

xiyan@LAPTOP-87PRR6K8:~$ ps axj | grep init
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值