查找、链接与压缩

查找、链接与压缩

这一篇学习几个非常实用的命令:查找文件、创建链接、打包压缩,以及软件安装。

查找文件:find

find 命令功能非常强大,通常用来在特定目录下搜索符合条件的文件。

命令 作用
find [路径] -name "*.py" 查找指定路径下扩展名是 .py 的文件,包括子目录
find ./ -name test.sh 查找当前目录下所有名为 test.sh 的文件
find ./ -name "[A-Z]*" 查找当前目录下所有以大写字母开头的文件
find /tmp -size +2M 查找 /tmp 目录下大于 2M 的文件
find ./ -size +4k -size -5M 查找当前目录下大于 4k 小于 5M 的文件
find ./ -perm 0777 查找当前目录下权限为 777 的文件或目录

如果省略路径,表示在当前文件夹下查找。之前学习的通配符在使用 find 时同样可用。

软链接:ln

命令 作用
ln -s 被链接的源文件 链接文件 建立文件的软链接,类似于 Windows 下的快捷方式

注意:

  1. 没有 -s 选项建立的是硬链接文件,工作中几乎不会建立硬链接
  2. 源文件要使用绝对路径,不能使用相对路径,这样移动链接文件后仍能正常使用

硬链接简介

在使用 ln 创建链接时,如果没有 -s 选项,会创建一个硬链接。

在 Linux 中,文件名和文件的数据是分开存储的。只有文件的硬链接数等于 0 时才会被删除。使用 ls -l 可以查看一个文件的硬链接数量。日常工作中几乎不会建立硬链接,知道即可。

打包压缩

打包压缩是日常工作中备份文件的一种方式。不同操作系统常用的打包压缩方式不同:

  • Windows 常用 rar
  • Mac 常用 zip
  • Linux 常用 tar.gz

tar 打包/解包

tar 是 Linux 中最常用的备份工具,可以把一系列文件打包成一个大文件,也可以把打包的大文件恢复成一系列文件。

1
2
3
4
5
# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...

# 解包文件
tar -xvf 打包文件.tar
选项 含义
c 生成档案文件,创建打包文件
x 解开档案文件
v 列出归档解档的详细过程
f 指定档案文件名称,必须放选项最后

注意:f 选项必须放在最后,其他选项顺序可以随意。

gzip 压缩

tar 只负责打包,不负责压缩。用 gzip 压缩 tar 打包后的文件,扩展名一般是 xxx.tar.gz。在 tar 命令中加 -z 选项可以调用 gzip。

1
2
3
4
5
6
7
8
# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...

# 解压缩文件
tar -zxvf 打包文件.tar.gz

# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径
选项 含义
-C 解压缩到指定目录,注意目标目录必须存在

bzip2 压缩

tar 与 bzip2 结合,用法和 gzip 一样,扩展名一般是 xxx.tar.bz2。在 tar 命令中加 -j 选项调用 bzip2。

1
2
3
4
5
# 压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...

# 解压缩文件
tar -jxvf 打包文件.tar.bz2

各种压缩格式对比

格式 压缩命令 解压命令 特点
.tar tar -cvf tar -xvf 只打包不压缩
.tar.gz tar -zcvf tar -zxvf 压缩率好,最常用
.tar.bz2 tar -jcvf tar -jxvf 压缩率最好,但更耗 CPU
.zip zip -r unzip 跨平台通用
.7z 7za a 7za x 压缩率高

软件安装:apt

apt 是 Advanced Packaging Tool,是 Ubuntu 下的安装包管理工具,可以在终端中方便地安装、卸载、更新软件包。

1
2
3
4
5
6
7
8
# 1. 安装软件
$ sudo apt install 软件包

# 2. 卸载软件
$ sudo apt remove 软件名

# 3. 更新已安装的包
$ sudo apt upgrade

apt 常用命令

命令 作用
sudo apt update 更新可用软件包列表
sudo apt upgrade 更新已安装的包
sudo apt install 软件名 安装软件
sudo apt remove 软件名 卸载软件
sudo apt autoremove 卸载所有自动安装且不再使用的软件包
sudo apt purge 软件名 卸载软件并删除配置信息

apt 和 apt-get 的区别

apt 和 apt-get 都是 Ubuntu 下常用的安装软件命令。早期使用 apt-get,从 Ubuntu 16 开始官方建议使用 apt。两者的使用方式非常类似。

配置软件源

如果希望在 Ubuntu 中安装软件更快,可以通过设置镜像源,选择一个访问速度更快的服务器来提供软件下载服务。

所谓镜像源,就是所有服务器的内容是相同的(镜像),但根据所在位置不同,国内服务器通常速度更快。更换服务器后,需要一个相对较长的更新过程,需要耐心等待。

deb 安装格式

deb 是 Debian Linux 的安装格式,在 Ubuntu 中同样可以使用。要安装 deb 安装包,需要使用 dpkg 命令:

1
$ sudo dpkg -i <package.deb>

小结

这一篇我们学习了查找、链接、压缩和软件安装。下一篇学习 Vim 编辑器。

上一篇:系统信息与进程管理

下一篇:Vim 编辑器