目标
- 查找文件
find
- 软链接
ln
- 打包和压缩
tar
- 软件安装
rpm
01. 查找文件
-
find
命令功能非常强大,通常用来在 特定的目录下 搜索 符合条件的文件
-
如果省略路径,表示在当前文件夹下查找
-
之前学习的通配符,在使用
find
命令时同时可用
演练目标
- 搜索桌面目录下,文件名包含
1
的文件
- 搜索桌面目录下,文件名包含
find -name "*1*"
- 搜索桌面目录下,所有以
.txt
为扩展名的文件
- 搜索桌面目录下,所有以
find -name "*.txt"
- 搜索桌面目录下,以数字
1
开头的文件
- 搜索桌面目录下,以数字
find -name "1*"
02. 软链接
- 没有
-s
选项建立的是一个 硬链接文件 - 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
- 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
演练目标
- 将桌面目录下的
01.py
移动到demo/b/c
目录下 - 在桌面目录下新建
01.py
的 软链接FirstPython
- 分别使用 相对路径 和 绝对路径 建立
FirstPython
的软链接 - 将
FirstPython
移动到demo
目录下,对比使用 相对路径 和 绝对路径 的区别
硬链接简介(知道)
- 在使用
ln
创建链接时,如果没有-s
选项,会创建一个 硬链接,而不是软链接
硬链接演练
- 在
~/Desktop/demo
目录下建立~/Desktop/demo/b/c/01.py
的硬链接01_hard
- 使用
ls -l
查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录) - 删除
~/Desktop/demo/b/c/01.py
,并且使用tree
来确认demo
目录下的三个链接文件
文件软硬链接的示意图
- 在 Linux 中,文件名 和 文件的数据 是分开存储的
- 在 Linux 中,只有文件的
硬链接数 == 0
才会被删除 - 使用
ls -l
可以查看一个文件的硬链接的数量 - 在日常工作中,几乎不会建立文件的硬链接,知道即可
03. 打包压缩
- 打包压缩 是日常工作中备份文件的一种方式
- 在不同操作系统中,常用的打包压缩方式是不同的
-
Windows
常用rar
-
Mac
常用zip
-
Linux
常用tar.gz
-
3.1 打包 / 解包
-
tar
是 Linux 中最常用的 备份工具,此命令可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件 -
tar
的命令格式如下:
# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...
# 解包文件
tar -xvf 打包文件.tar
-
tar
选项说明
注意:
f
选项必须放在最后,其他选项顺序可以随意
打包解包演练
- 删除桌面下的所有内容
- 在桌面下新建三个空白文件
01.py
、02.py
、03.py
- 将这三个文件打一个
py.tar
的包 - 新建
tar
目录,并且将py.tar
移动到tar
目录下 - 解包
py.tar
3.2 压缩/解压缩
1) gzip
* `tar` 与 `gzip` 命令结合可以使用实现文件 **打包和压缩**
* `tar` 只负责打包文件,但不压缩
* 用 `gzip` 压缩 `tar` 打包后的文件,其扩展名一般用 `xxx.tar.gz`
在
Linux
中,最常见的压缩文件格式就是xxx.tar.gz
- 在
tar
命令中有一个选项 -z 可以调用gzip
,从而可以方便的实现压缩和解压缩的功能 - 命令格式如下:
# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
# 解压缩文件
tar -zxvf 打包文件.tar.gz
# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径
2) bzip2
-
tar
与bzip2
命令结合可以使用实现文件 打包和压缩(用法和gzip
一样)-
tar
只负责打包文件,但不压缩, - 用
bzip2
压缩tar
打包后的文件,其扩展名一般用xxx.tar.bz2
-
- 在
tar
命令中有一个选项 -j 可以调用bzip2
,从而可以方便的实现压缩和解压缩的功能 - 命令格式如下:
# 压缩文件
$ tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...
# 解压缩文件
$ tar -jxvf 打包文件.tar.bz2
04. 软件安装
4.1 通过 rpm 安装/卸载软件
- 是Red-Hat Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,大部分Linux的分发版本都有采用,可以算是公认的行业标准了。
- 可以在终端中方便的 安装/卸载/更新软件包
# 显示系统中所有已经安装的rpm包
# rpm -qa
# 显示所有名称中包含 "httpd" 字样的rpm包
# rpm -qa | grep httpd
# 显示软件安装特殊信息
# rpm -qi package.rpm
# 安装一个rpm包
# rpm -ivh package.rpm
# 更新一个确定已经安装的rpm包
# rpm -F package.rpm
# 删除一个rpm包,只需要给出包名即可
# rpm -e package_name
4.2 通过 yum 安装/卸载软件
- Yum(全称为 Yellow dog Updater, Modified)是一个在CentOS和RedHat以及Fedora中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
# 语法格式
yum [options] [command] [package ...]
# 列出所有可安裝的软件清单命令
$ yum list
# 查找软件包 命令
$ yum search <keyword>
# 安装指定的软件命令
$ yum install <package_name>
#更新指定的软件命令
$ yum update <package_name>
#删除软件包命令
$ yum remove <package_name>
提示:rpm和yum通常使用root权限进行操作
安装演练
- 安装tree工具,tree工具用来以树型方式显示当前目录和文件的结构
# 查找是否有相关工具
[neusoft@localhost ~]$ yum search tree
# 切换root用户
[neusoft@localhost ~]$ su
# 执行安装
[root@localhost neusoft]# yum install tree
# 验证
[neusoft@localhost Project1]$ tree
//
-
运行结果
4.3 配置软件源
- 如果希望在
CentOS
中安装软件,更加快速,可以通过设置镜像源,选择一个访问网速更快的服务器,来提供软件下载/安装服务
所谓镜像源,就是所有服务器的内容是相同的(镜像),但是根据所在位置不同,国内服务器通常速度会更快一些!
- 网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错。
- 将yum源设置为163 yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。
安装步骤
- 首先备份/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
- 下载对应版本 repo 文件, 放入 /etc/yum.repos.d/,
CentOS7:http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
mv CentOS7-Base-163.repo CentOS-Base.repo
- 运行以下命令生成缓存
yum clean all
yum makecache
提示:更换服务器之后,需要一个相对比较长时间的更新过程,需要耐心等待。更新完成后,再安装软件都会从新设置的服务器下载软件了
除了网易之外,国内还有其他不错的 yum 源,比如中科大和搜狐。
中科大安装方法查看:https://lug.ustc.edu.cn/wiki/mirrors/help/centos
sohu安装方法查看: http://mirrors.sohu.com/help/centos.html
4.4 安装演练
- 小火车提示
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/epel-release-7-11.noarch.rpm
rpm -ivh epel-release-7-11.noarch.rpm
yum install -y sl
提示:epel-release-7-11.noarch.rpm这个文件名字可能会改变,安装前需要确认一下
运行
sl
运行结果
- end -
网友评论