文件与内容查找与归档压缩

课程目标

1.熟练使用find命令进行文件查找
2.款练使用grep对文件内容进行查找
3.熟练使用tar等命令进行文件压缩与解压缩

授课进度

一、find命令文件查找

1. 按照文件名搜索

[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容
选项:
-name:按照文件名搜索
-iname:按照文件名搜索,不区分文件名大小写

案例:

功能项 命令实例 作用
find find 起始目录 查找类型 查找条件 查找其实目录及所有子目录下的文件及文件夹
find . -name “hello.txt” 查找当前目录下文件名为hello.txt的文件或文件夹
find . -name “hello” 查找当前目录下文件名包含hello的文件或文件夹
find /home -name “bash” 查找目录/home下文件名包含bash的文件或文件夹
find . -name “*” 查找当前目录下的所有文件或文件夹(作用同-ls -R)
find . -name “[h]*” 查找当前目录下以h开头的文件或文件夹
find . -name “[h|f]*” 查找当前目录下所有以h或f开头的文件或文件夹,|可以省略
find . -name “[a-z]*” 查找当前目录下所有以小写字母开头的文件或文件夹
find . -name “[A-Z]*” 查找当前目录下所有以大写字母开头的文件或文件夹
find . -name “[a-Z]*” 查找当前目录下所有以字母开头的文件或文件夹
find . -name “[0-9]*” 查找当前目录下所有以数字开头的文件或文件夹
find . -name “h?llo*” 查找当前目录下所有以h后面带一个字符再加llo开头的文件或文件夹
find . -name “[ ^ a-b]*” 查找当前目录下不以a-b开头的文件或文件夹
find . -name ’ \ \’ 查找当前目录下包含特殊字符\的文件夹(注意使用单引号)
find . -type f -atime +5 -exec ls ; 后面的命令必须以分号;)结束。众所周知,转义字符用于去除单个字符的特殊含义。在 Linux 中,反斜杠 \ 用作转义字符。所以我们将它用于分号字符。

2. 按照文件大小搜索

[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容
选项:
-size[+|-]大小:按照指定大小搜索文件这里的“+”的意思是搜索比指定大小还要大的文件,“-”的意思是搜索比指定大小还要小的文件。

案例:

find . -size 200c 查找当前目录下文件大小为200字节的文件(c表示byte)
find. -size +200c 查找当前目录下文件大小大于200字节的文件(用-表示小于)

3.按照修改时间搜索

Linux中的文件有访问时间(atime)数据修改时间(mtime)、**状态修改时间(ctime)**这三个时间,我们也可以按照时间来搜索文件。(注意:如果以time结尾的时间单位,默认单位时间是天。)

命令格式:
[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容
选项:
-atime[+|-]时间:按照文件访问时间搜索
-mtime[+|-]时间:按照文件数据修改时间搜索
-ctime[+|-]时间:按照文件状态修改时间搜索提示:也有-amin、-mmin等时间选项,时间单位为分钟。

案例:

find . -mtime -3 查找当前目录下在3天内更新过的文件或文件夹
find . -mtime +3 查找当前目录下在3天前更新过的文件或文件夹

4.按照权限搜索

命令格式:
[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容
选项:
-perm: 权限模式:查找文件权限刚好等于“权限模式”的文件
-perm: -权限模式:查找文件权限全部包含“权限模式”的文件
-perm: +权限模式:查找文件权限包含“权限模式”的任意一个权限的文件
find . -perm 777 查找当前目录下权限为777的文件或文件夹

5.按照所有者和所属组搜索

命令格式:
[root@localhost ~ ] #find 搜索路径 [选项] 搜索内容
选项:
-uid 用户ID:按照用户ID查找所有者是指定ID的文件
-gid组ID:按照用户组ID查找所属组是指定ID的文件
-user用户名:按照用户名查找所有者是指定用户的文件
-group组名:按照组名查找所属组是指定用户组的文件
-nouser:查找没有所有者的文件

案例:

find . -user yang 查找当前目录下文件所有者为yang的文件或文件夹
find . group yang 查找当前目录下文件或所属组为yang的内容

5.按照文件类型搜索

命令格式:
[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容
选项:
-type d:查找目录
-type f:查找普通文件
-type l:查找软链接文件
find . -type d 查找当前目录下所有的文件夹(普通文件的类型为f),了解Linux文件夹类型: 1)f:普通文件,如文本文件,可执行文件 2)c:字符设备,如终端、磁带机等 3)b:块设备,如光盘、硬盘等
find . -type l 查找当前目录下所有的软连接文件

6. 逻辑运算符

find命令支持一些复杂的搜索方式:逻辑与、逻辑或、逻辑非。

命令格式:
[root@localhost ~ ] #find 搜索路径 [选项] 搜索内容
选项:
-a:and逻辑与
-o:or逻辑或
-not:not 逻辑非
案例:
#在当前目录下搜索大于2KB,并且文件类型是普通文件的文件
[root@localhost ~ ] # find . -size +2k -a -type f

7.-exec选项

[root@localhost ~ ] # find 搜索路径 [选项] 搜索内容 -exec 命令2 {} \;#把命令1的操作结果,放在命令2后边的{ }中,然后命令2执行内容

案例:

find . -name “hello*” -exec ls -l {} ; 查找当前目录下所有以hello开头的文件并将其细节显示出来,如果查找出了目录,那么此时目录也会被ls -l列出来
find . -name “hello*” -exec rm {} ; 查找当前目录下所有以hello开头的文件并将其删除

二、内容查找

grep是筛选的命令,在查看日志的时候,也可以对日志的内容进行筛选它可以把我们需要筛选的关键词那一部分的行数显示出来.
常用参数:grep   -n   内容    //-n可以显示搜索内容在文件中的行号。grep -v  内容   //表示排除所在内容,进行搜索grep    -i      忽略字符大小写的差别
功能项 命令实例 作用
grep grep[选项]匹配模式 目标文件 基于行对目标文件的内容进行查找
grep “root” /etc/passwd 查找到/etc/passwd文件中包含root的行
grep -n “root” /etc/passwd 查找到/etc/passwd文件中包含root的行,并显示行号
grep “^root” /etc/passwd 查找以root为行首的行
grep “root$” /etc/passwd 查找以root为行尾的行
grep “1” /etc/passwd 查找以a或者b为行首的行
grep -v “abc” 排除包含abd的行
ls | grep test 从ls 的输出中过滤包含test的文件名
grep -r games /etc 在/etc目录下查找所有包含games的文件
grep “^s.*login$” ./passwd 从passwd下查找s开头,login结尾的行
find 与grep结合 find ./ -name “*” | xargs grep word 遍历某个目录下的所有文件中包含word的文件
wc wc -l 统计文件行数或输出的个数,-c只显示Bytes数。-l显示行数

linux下常用压缩解压命令

一、tar 压缩与解压缩

简介:

​ tar命令用来打包一个目录,它支持三种格式:“.tar”、“.bz2"和”.gz"

压缩:

语法:tar [选项] 自定义压缩文件包名.tar 要压缩的文件

选项:-z  通过 gzip 来进行归档压缩,​      -c 创建新文件​       -v 显示压缩或解压缩的过程​       -f  --file :要操作的文件名​        -j  bzip2 压缩通过 bzip2 来归档压缩文件

案例:

#将top1000.txt文件夹压缩成top1000.tar

 tar zcvf top1000.tar top1000.txt

`

注意:解压缩过后,压缩包消失。

解压缩:

语法:tar [选项] 压缩的文件

选项:​       -x 拆包-v 显示压缩或解压缩的过程-f  --file :要操作的文件名

案例:

#解压缩top1000.tar

tar xvf top1000.tar

二、zip文件压缩与解压

压缩:

语法:

zip 压缩过后的文件名.zip 要压缩的文件

例:

#将top1000.txt文件夹压缩成top1000.zip

zip top1000.zip top1000.txt

解压缩:

语法:unzip [选项] 要解压的文件名

选项:-d 制定到解压路径

#解压缩top1000.zip

linux压缩密码破解

  1. 通过zip2john工具破解压缩包密码

​ 得到password.txt文件,里面为加密的压缩包密码

zip2john shadow.zip > passwd.txt

  1. 再输入john命令破解加密的密码:

    john passwd.txt
    

得到密码123456。

注意:

下次使用需要把缓存删除,不然会提示有错

第十四天 09-文件与内容查找与归档压缩爆破相关推荐

  1. Android开发笔记(七十四)布局文件优化

    include/merge 布局优化中常常用到include/merge标签,include的含义类似C代码中的include,意思是直接把指定布局片段包含进当前的布局文件.include适用于多个布 ...

  2. java批量上传文件_Spring Boot2(十四):单文件上传/下载,文件批量上传

    文件上传和下载在项目中经常用到,这里主要学习SpringBoot完成单个文件上传/下载,批量文件上传的场景应用.结合mysql数据库.jpa数据层操作.thymeleaf页面模板. 一.准备 添加ma ...

  3. Mac OS使用技巧之十四:自定义文件图标

    剩下的教程多是以前遗漏掉的方法,和一些使用的小技巧,做一些补充,希望能帮到大家.  自定义图标      对于Mac OSX用户来说,Dashboard,Dock栏,壁纸以及各种键盘触摸板的快捷操作都 ...

  4. VUE学习(十四)读取json文件

    1.json文件内容 2.使用import导入json <script setup>import config from '../../public/config/config.json' ...

  5. Three.js(十四)—— 模型文件加载

    文章目录 14.Three.js 加载外部模型文件 14.1 Three.js 数据结构.导入导出 Threejs导出模型信息 自定义模型加载器文件 加载Three.js导出的模型数据 14.2 加载 ...

  6. Android开发笔记(三十四)Excel文件的读写

    Android中操作Excel文件的场合较少见,主要是一些专业领域导入导出报表时使用,所以处理Excel读写的开源代码也很稀缺.目前读写Excel主要采用开源库jxl,这个是韩国人写的excel操作工 ...

  7. JMeter(二十四):实现文件上传的http接口测试

    不晓得是哪一年的3月10号,创建了这一页笔记,今天2019年10月12号,打开竟然是空的,那就花点时间补上这点空缺. 1.jmeter实现文件上传接口测试,在做过抓包之后,需要注意几点: 请求头con ...

  8. 201671010430 司昕劼 实验十四 课程学习总结

    实验十四 课程学习总结 项目 内容 这个作业属于哪个课程 (https://www.cnblogs.com/nwnu-daizh/) 这个作业的要求在哪里 (https://www.cnblogs.c ...

  9. MOOS-ivp 实验十四(2)behavior简要概述

    MOOS-ivp 实验十四(2)behavior简要概述 继续上一章的内容,对行为使命进行进一步的介绍和参数配置工作. 文章目录 MOOS-ivp 实验十四(2)behavior简要概述 前言 一.简 ...

最新文章

  1. “意念打字”速度接近常人手机聊天,专家:这比马斯克的“猴子玩游戏”难多了 | Nature封面...
  2. 关于极光IM设置昵称不生效的解决办法
  3. golang error类型 简介
  4. c++ 调用python
  5. 为何 short s1 = 1; 是对的,而 float f=3.4; 是错的?
  6. android工程引入unity,Unity导出Android Studio工程
  7. RUP,XP,敏捷原理
  8. Python这些位运算的妙用,绝对让你大开眼界
  9. python文件读写方法手机_python读取文件—txt文件常用读写操作
  10. 自考的那些事儿(三):软件开发工具(总述篇)
  11. Atitit 建立新组织集团模型的框架基本制度与一些原则
  12. 协方差矩阵的定义性质与python实现
  13. 腾讯云搭建vsftpd服务器
  14. JAVA狗叫源代码_从头认识java-1.1 编程语言抽象过程以及java的基础特性
  15. SQL Server数据库插入数据中文显示乱码问题
  16. 还在为本地到服务器图片的上传下达而烦恼吗?使用base64及flask框架实现服务端部署服务器! 本地客户端图片的上传下达!
  17. 计算机网络原理复习(一)
  18. SAP 系统管理用到的T-CODE
  19. c语言是一种面向过程的程序设计语言,C语言实现面向对象的C语言是一种面向过程的语言联合开发网络...
  20. android 模拟器虚拟CPU的修改

热门文章

  1. Bootstrap 的基本使用方法
  2. 手把手教你学习Solidity|Solidity开发【一】
  3. 关于ADFS的局限性,你了解多少?
  4. java:下拉列表框组件
  5. 复杂美区块链溯源系统架构
  6. 进入人工智能行业有哪些方法?
  7. 医学统计学 第四章(定量资料的统计描述)
  8. mysql select 补空行_用前一行的值填充空行mysql
  9. “逻辑和”与 “逻辑或”运算符
  10. java与jdk版本号的区别