文章目录
1.查找文件
find 命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件。
之前咱们学习过通配符,在使用 find 命令时也可以使用,如:
find [路径] -name " *.py" 查找指定路径下扩展名是 .py 的文件,包括子目录,如果省略路径,表示在当前文件夹下查找
再举例练习一下:
- 搜索桌面目录下,文件名包含 1 的文件
find -name “1”- 搜索桌面目录下,所有以 .txt 为扩展名的文件
find -name “*.txt”- 搜索桌面目录下,以数字 1 开头的文件
find -name “1*”
2. 软链接
建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式。
命令:ln -s 被链接的源文件 链接文件
注意:
- 没有 -s 选项建立的是一个 硬链接文件
两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接- 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
演练:
- 将桌面目录下的 01.py 移动到 demo/b/c 目录下
- 在桌面目录下新建 01.py 的 软链接
分别使用 相对路径 和 绝对路径 建立软链接
使用相对路径:
使用绝对路径:
这两个软连接都是在桌面目录下创建的,所以都可以正常使用(可以试试使用cat命令都可以正常查看文件内容,这里就不再贴图了),目前并不能看出有什么区别,接下来请看下一步。 - 我们试着将 这两个软连接都移动到 demo 目录下,对比使用 相对路径 和 绝对路径 的区别:
在桌面目录下执行命令: mv 01* demo
再tree一下看看文件目录结构:
有人就说了,这不就是颜色路径不一样吗?事实上并没有这么简单,咱们再使用cat命令查看这两个软连接的内容:
发现绝对路径可以正常查看,而使用相对路径就无法查看了。这是为啥呢?来,咱们再看一下demo的目录结构:
咱们目前所在的工作目录是demo目录,用相对路径在demo目录下是找不到demo目录的,所以就无法查看。而使用绝对路径,永远都是拥有完整的路径,所以不管把软连接移动到哪个目录下都是能够访问到它对应连接的文件的。
因此,咱们在刚开始介绍软连接时就强调注意事项:源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
硬链接简介(知道)
在使用 ln 创建链接时,如果没有 -s 选项,会创建一个 硬链接,而不是软链接
硬链接演练
-
在 ~/Desktop/demo 目录下建立 ~/Desktop/demo/b/c/01.py 的硬链接 01_hard
-
使用 ls -l 查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录)
看起来就是不带箭头,就是一个正常的文件,试一下cat命令查看该文件内容:
发现可以查看,一切正常,继续往下走。 -
我们尝试删除 ~/Desktop/demo/b/c/01.py,并且使用 tree 来确认 demo 目录下的三个链接文件:
发现之前用绝对路径建立的软连接变红了,根据我们上面测试的经验(相对路径变红了不能用),这个用绝对路径建的软连接估计也不能用了,我们试试:
确实如此,这时硬链接可以访问,软连接不可以
我们再试着用ls -l查看:
发现硬链接文件的硬链接数从2变成了1。
思考总结一下:原来软连接删除源文件后会受到影响,而硬链接并不会受影响。
再贴张图加深理解:
在 Linux 中,文件名和文件的数据 是分开存储的
注意:
在 Linux 中,只有文件的 硬链接数 == 0 即将源文件及所有的硬链接都删除才会被删除。
使用 ls -l 可以查看一个文件的硬链接的数量
在日常工作中,几乎不会建立文件的硬链接,知道即可
3. 打包压缩
打包压缩 是日常工作中备份文件的一种方式,在不同操作系统中,常用的打包压缩方式是不同的:
Windows 常用 rar或者zip
Mac 常用 zip
Linux 常用 tar.gz
3.1 打包 / 解包
tar 是 Linux 中最常用的 备份工具,此命令可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件
tar 的命令格式如下:
# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...
# 解包文件
tar -xvf 打包文件.tar
tar 选项说明
选项 含义
c 生成档案文件,创建打包文件
x 解开档案文件
v 列出归档解档的详细过程,显示进度
f 指定档案文件名称,f 后面一定是 .tar 文件,所以必须放选项最后
敲黑板:f 选项必须放在最后,其他选项顺序可以随意
先演练一下打包,为了方便观察效果,我们把桌面重要的文件保存到其他地方,然后删除桌面下的所有内容
在桌面下新建三个空白文件 01.py、02.py、03.py,将这三个文件打一个 py.tar 的包:
然后我们再新建 tar 目录,并且将 py.tar 移动到 tar 目录下:
然后我们切换到tar目录,解包 py.tar:
可以看到tar目录下三个py文件已经被解出来了,完成。
3.2 压缩/解压缩
3.2.1 gzip
tar 与 gzip 命令结合可以使用实现文件 打包和压缩
注意:tar 只负责打包文件,但不压缩
用 gzip 压缩 tar 打包后的文件,其扩展名一般用 xxx.tar.gz
在 Linux 中,最常见的压缩文件格式就是 xxx.tar.gz
在 tar 命令中有一个选项 -z 可以调用 gzip,从而可以方便的实现压缩和解压缩的功能。
- 压缩文件命令格式如下:
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径…
我们试着把桌面上三个py文件打包压缩:
和打包比较:
可以直观的看出同样的文件,打包压缩的文件比直接打包的文件小了很多,比较命令的区别也只是多了个z选项,文件名后缀多了个.gz。
2. 解压缩文件命令格式如下:
tar -zxvf 打包文件.tar.gz
- 解压缩到指定路径命令格式如下:
tar -zxvf 打包文件.tar.gz -C 目标路径
注意C要大写。
-C 选项含义:解压缩到指定目录,注意:要解压缩的目录必须存在
3.2.2 bzip2(two)
tar 与 bzip2 命令结合可以使用实现文件 打包和压缩(用法和 gzip 一样)
tar 只负责打包文件,但不压缩,
用 bzip2 压缩 tar 打包后的文件,其扩展名一般用 xxx.tar.bz2
在 tar 命令中有一个选项 -j 可以调用 bzip2,从而可以方便的实现压缩和解压缩的功能。
1.压缩文件命令格式如下:
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径…
可以看出用bz2和gz压缩文件的大小差不多。
2. 解压缩文件命令格式如下:
tar -jxvf 打包文件.tar.bz2
`
和gzip压缩文件命令差不多,命令只是从-z变-j,创建文件名.gz后缀变成.bz2。
注意指定目录解压缩时同gizp一样,要求要解压缩的目录必须存在!
4. 软件安装
4.1 通过 apt 安装/卸载软件
apt 是 Advanced Packaging Tool,是 Linux 下的一款安装包管理工具
可以在终端中方便的 安装/卸载/更新软件包。
# 1. 安装软件
$ sudo apt install 软件包
# 2. 卸载软件
$ sudo apt remove 软件名
# 3. 更新已安装的包
$ sudo apt upgrade
做一下小演练:
1.安装sl
输入命令: sudo apt install sl
回车后很快会安装完成,然后输入sl,再回车,会看到一辆小火车驶过:
2.输入命令:sudo apt install htop
回车后软件安装完成,再输入htop回车,可以查看当前进程排名的软件:
和top命令一样,退出只需要按一下q就可以了。
4.2 配置软件源
如果希望在 ubuntu 中安装软件,更加快速,可以通过设置镜像源,选择一个访问网速更快的服务器,来提供软件下载/安装服务
提示:更换服务器之后,需要一个相对比较长时间的更新过程,需要耐心等待。更新完成后,再安装软件都会从新设置的服务器下载软件了。
所谓镜像源,就是所有服务器的内容是相同的(镜像),但是根据所在位置不同,国内服务器通常速度会更快一些!
看一下怎么设置:1.打开系统设置(ubuntu右上角齿轮状的图标),点击软件和更新:
2.点击一下下载自:…,在弹出的窗口中选择其他站点,就可以选择服务器了,如果不确定用什么服务器好,可以点击选择最佳服务器:
耐心等待一会儿,系统会自动择优:
找到后点击选择服务器:
输入密码,点击授权,再点击关闭按钮后会弹出:
点击重新载入,耐心等待一会儿就可以了。