Linux内核:Centos 7.6 64位
find指令
按文件名查找文件的用法:find [路径] -name [文件名]
作用:可以查找目标文件
找到后用nano,通过绝对路径打开目标文件。目前只需要知道这种程度就行了。
grep指令
语法:grep [选项] 搜寻字符串 文件名
作用:在文件中搜寻指定的字符串,将找到的行打印出来。
grep是行文本过滤工具,在行中只要有匹配的,整行都会被打印出来。
grep在匹配字符串的时候,默认是明确大小写的,加上选项 -i 代表忽略大小写进行查找。
还有一个选项 -v 代表反向匹配字符串,即凡是包含关键字的文本行全部不打印,只打印没有匹配关键字的行。
选项 -n 代表把查找出来的文本行带上行号。
zip/unzip指令
zip语法:zip [选项] 压缩文件.zip 目录或文件
作用:将目录或文件压缩成zip格式。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。不加-r选项就会只压缩目录。
unzip语法:unzip 压缩文件.zip
作用:解压文件
准备工作:
同样,一些云服务器没有安装zip指令,切换到root账户下输入指令:yum install -y zip
默认的zip指令,只压缩了目录。将原tar_package目录转移到上层目录后,解压test.zip,解压出的内容只有tar_package的目录,要想连同文件一并压缩,需要加上-r选项。
回到开始的状态重新进行压缩:
这次压缩完再将tar_package移到上级目录后,对test.zip进行解压得到的tar_package文件中包含了原tar_package的所有内容。默认情况下,几乎所有的解压工具解压出来的文件,都会放到当前目录下。如果要解压到指定目录下,就需要unzip指令的一个选项:-d
语法:unzip 压缩文件.zip -d 指定目录(绝对路径相对路径都可以)
问题:
为什么要打包压缩?
1.节约空间
2.网上下载的安装包,都是以压缩文件的形式存在的。因为软件不是只有一个文件,其中有:可执行程序,快捷方式,安装方式,卸载方式,配置文件,动态库,静态库等等。一个目录有几十个几百个文件,如果不打包在一起,就可能在网络传输的时候,丢失了几个文件,软件的功能就会出现问题。而压缩包有自身的检查规则,只要下载完成,就一定是完整的。压缩包是一个文件,不像其他文件形式,一个文件下还包含几个文件。
所有互联网公司的后台都是Linux系统,开发人员开发的软件,将来都要部署在Linux系统上,所以所有软件都要打包压缩,上传Linux,进行安装部署。
一般一个压缩包要经过两个过程:打包,压缩;解压过程:解压,解包。zip是将两个动作合并的,而tar可以将两个动作分开。
下面介绍第二个压缩/解压指令:tar
tar指令压缩:
c是create,z是压缩,f是指定压缩文件的名称。tar指令压缩出来的文件名后缀为tgz。
tgz完整的内容为tar.gz。tar是打包,gz是压缩。
tar指令解压:
x是解包,z在这里是解压,f代表指明的文件名称。
tar的选项很多,选几个介绍一下:
一些选项是不允许单独使用的,以及会出现带 '-' 和不带 '-' 会存在不同的表现。
多个选项连用可以省略 '-' ,但是不同的tar版本可能存在不同。有的指令顺序必须固定,有的不需要固定。
如果想看到解压的过程,需要使用-v指令。但是有的云服务器要看解压的过程,必须在压缩的时候就加上v指令。
解压到指定目录:
目前我们只是学习了zip后缀和tgz后缀的压缩包解压方式,并没有学习完所有压缩包。
Linux是支持几乎所有类型压缩包的解压的(以指令的方式支持)(说是几乎支持,是因为一些压缩包不需要在Linux下解压)。就算没有纳入到Linux标准库中去,也一定是存在源代码支持相关工具的解压的。
Linux支持几乎所有类型的压缩包文件解压的原因在于:Linux服务器只有一种,但是面对的开发环境(Windows等)是很多的。不同的平台,能支持的压缩包软件是不同的。
但是几乎所有压缩包软件的操作方式就这两种:基本使用和指定路径压缩。
如果遇到不明白的压缩包种类改怎么办?比如一个test.xxx文件
直接在网上搜索:centos .xxx后缀如何解压。