文章目录
- 搜索查找
- find查找文件和目录
- locate快速定位文件路径
- grep 过滤查找
- | 管道符
- which命令用于查找文件。
- whereis
- 压缩和解压缩
- gzip/gunzip 压缩
- zip/unzip压缩
- tar打包
- 总结
搜索查找
find查找文件和目录
find指令将从指令指定目录下向下遍历其各个子目录,将满足条件的显示在终端
基本用法 :find [搜素范围][选项]
选项 | 功能 |
---|---|
-name 查询方式 | 按照指定的文件名查找模式查找文件 |
-user | 查找属于指定用户名所有文件 |
-size | 按照指定的文件大小查找 单位 b,c,w,k,M,G, |
-mtime n | 在过去 n 天内修改过的文件 |
-ctime n | 在过去 n 天内创建的文件 |
… | … |
- 按照文件名查找
# 查找当前目录下的bin文件
find -name bin
- 使用通配符查找符合条件的文件
# 查找指定目录下文件名结尾是.cfg的文件
find /root -name "*.cfg"
- 查看文件大小并筛选文件大于50M的文件
# 将文件大小转换成人性化的显示
ls -lh
# 查找文件大小大于50M的文件
find /usr -size +50M
其他参数的用法类似
locate快速定位文件路径
locate指令利用事先建立在系统中所有文件名称及路径的locate数据库快速实现定位给定的文件,Locate指令无需遍历整个文件系统,查询速度较快,为了保证差选结果的准确,管理员必须定期更新数据库
基本语法
locate 文件名
第一次运行前,必须需要使用updatedb指令创建数据库
grep 过滤查找
grep 选项 查找内容 源文件
查找文件中的内容
选项 | 功能 |
---|---|
-n | 显示匹配的行号 |
- 查找
/etc/pwsswd
文件中root
出现的位置
grep -n root /etc/passwd
| 管道符
表示将前要给命令处理的结果输出传递给后面的命令处理,
基本语法 命令1 | 命令2
- 查找文件名中带r的文件
ls | grep r
grep 在实际中常和 | 一起应用
在实际过程中| grep这两个经常和其他命令搭配使用
which命令用于查找文件。
which
指令会在环境变量$PATH设置的目录里查找符合条件的文件。
- 查找
java
所在的位置
which java
- 查找
ls
所在的位置
which ls
whereis
该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。
简单来说就是查找应用程序的相关内容,
基本用法:
whereis 选项[-B <目录>...][-M <目录>...][-S <目录>...][文件...]
最常用的几个选项和参数
选项/参数 | 作用 |
---|---|
-b | 只查找二进制文件 |
-m | 只在设置的目录下查找说明文件 |
B<目录> | 只在设置的目录下查找二进制文件 |
-M<目录> | 只在设置的目录下查找说明文件 |
… | … |
- 找出ls命令位置和帮助文档的位置
whereis ls
左边第一个是命令位置,后面两个是帮助文档的位置(man
)
- 将上面的信息分别显示
whereis -b ls
whereis -m ls
压缩和解压缩
gzip/gunzip 压缩
基础用法
gzip 文件 压缩文件 只能将文件压缩为.gz文件
gunzip 文件.gz 解压缩文件命令
注意:
- gzip只能压缩文件不能压缩目录
- 直接压缩原文件,压缩后不会保留原文件
- 同时压缩多个文件会产生多个压缩包
当前的目录和文件大小
- 压缩文件aaa.txt文件
# 压缩
gzip aaa.txt
# 查看文件大小
ll -h
- 解压缩,将
aaa.txt.gz
解压缩
gunzip aaa.txt.gz
zip/unzip压缩
-
zip [选项] xxx.zip 将要压缩的内容
-r 选项,可以递归的压缩,可以压缩目录 -
unzip [选项][目标目录] xxx.zip
解压
-d目录 指定解压后文件存放的位置 -
压缩目录data下的所有文件
将目录data
压缩为data.zip
zip -r data.zip data
- 将
data.zip
压缩文件加压到根目录下
unzip -d / data.zip
注意:
可以保留原文件
tar打包
基本用法
tar [选项] xxx.tar.gz 将要打包的目录
打包目录
选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 执行压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
-C | 解压到指定目录 |
- 打包并压缩 将
aaa.txt
和data
目录打包并压缩
tar -zcvf fish.tar.gr aaa.txt data
- 解包并且解压缩到指定目录
# 将fish,tar,gr 解压并且解压缩到 根目录下
tar -zxvf fish.tar.gr -C /
在实际生活和工作中tar使用的频率最高,因为它既可以打包又可以结合压缩工具进行压缩,平时我们安装的一些软件包都是用tar进行解包解压缩
tar -zxvf 需要解压的内容 -C解压到的目录
tar -zcvf 压缩包的名称 [文件/目录] [文件/目录] 、、、、
总结
本章讲解了如何在Linux搜索相关的操作,使用grep
在文件中搜索内容,使用find、locate、which、whereis
搜索文件所在的位置,以及一个有趣的符号 |
和其他命令的结合使用,后面还介绍了压缩解压缩和打包gzip,zip,tar
以及最常用的两行指令