一、find命令
1.find的作用:对文件进行搜索
 2. 基本语法: 
 
                     find [文件路径] [选项 选项的值 ]  
 
 
 3.常见的选项  
 
 -name  根据文件的名称搜索文件,支持通配符 *  
 
 -type f  代表普通文件,-type  d 代表目录  
 
 4.* 通配符  
  在 linux  系统中,如果要查找的文件的名称不清晰,可以使用部分文件名 +* 搜索 
 
 5.用法 
 
 (1)找到 httpd.conf 文件  
 
         find / -name "httpd.conf" -type f 
   
 
 (2)搜索以 http 开头的文件 
 
          find /etc/ -name "http*" -type f 
 
 
 (3)搜索以.conf结尾 的文件 
 
          find /etc/ -name "*.conf" -type f 
   
 
二、stat命令
 1.stat的作用:获取文件的时间信息  
 
2.语法:
stat 文件
3.用法:查看opt目录下的test.conf 文件的时间信息
stat /opt/test.conf
三、touch命令
1.touch的作用:创建文件
(1)语法:touch 文件名称
(2)用法:创建一个aaa.txt的文件
touch aaa.txt
2.配置文件的修改时间
(1)语法:touch -m -d 日期时间格式 文件名称
(2)用法:
在opt目录下创建一个a.txt的文件,并设置时间为2024-7-15 00:00
touch /opt/a.txt -m -d "2024-7-13 00:00"
(3)创建多个文件并设置时间

查看opt目录下a.txt的最新时间信息

 注:文件不存在就创建并修改时间 ,文件存在只配置最后修改时间 
 
 
 
四、通过⽂件修改时间搜索⽂件
 1.语法  
 
 find  ⽂件路径  -mtime+days/-days  
 
 
 -mtime 根据⽂件最后修改时间搜索⽂件  
 
 
 + 号搜索⼏天之前的⽂件信息  
 
 
 - 号搜索⼏天之 内 的⽂件信息  
 
 
 2.用法 
 
 (1)搜索 3 天以前的信息,不包含第三个的,⽽且只搜 txt ⽂件 
 
 
 
 (2)搜索三天以内的⽂件 .txt ,包含今天 
 
 
 
五、删除文件
1.使用rm -rf 删除

显示rm为无效选项,这种方法不可行
2.使用管道(|)符号删除

图中显示.txt文件仍然存在,是因为rm和ls命令不支持管道
3.使用find执行-exec删除,可行

 使用 -exec  文件调用 rm 函数  {} 表示前面 find 查到的内容  \; 表示标识符  
 
4.使用xargs将查询结果交给rm,删除,可行

六、根据文件大小搜索文件
 1.语法: 
 
              find路径-size ⽂件⼤⼩ [ 常⽤单位 k MG]  
 
 注: 
 
 size值搜索等于size的⽂件  
 
 -size 值【 0 , size 值 )  
 
 +size 值( size 值,正⽆穷)  
 
 
 3.扩展命令 dd  
 
 使⽤ dd 创建扩展命令 ,⽣成指定⼤⼩的测试⽂件  
 
 语法  
 
 ddif=/dev/zeroof= ⽂件名称 bs=1Mcount=1  
 
 
 if 表示输⼊⽂件  
 
 of 表示输出⽂件  
 
 bs 代表字节为单位的块⼤⼩  
 
 count 代表被复制的块  
 
 其中 /dev/zore 是⼀个字符设备,会不断地返回 0 字节的⽂件 
 
 4.用法 
 
 (1)创建名称为 a.txt ,⼤⼩为 1M 的⽂件 
 
 
 
 查看⽂件信息,使⽤单位字节 
 
 
 
 查看⽂件信息,使⽤⽂件⼤⼩单位默认M 
  
  (2)⽣成其他⼤⼩的⽂件 
 
 
 
信息查看 
 
 
 
(3) 普通单位查看文件信息 
 
 
 
(4)根据文件大小搜索文件 
 
 
 
七、tree指令
 1.tree作用:创建文件列表,将文件名称以树的形式展示  
  2.使用 yum 指令进行安装  
     yum -y install tree 
  3.以树状结构显示 /var/log 目录中的文件 
  
 八、scp指令
 1.scp作用: 实现 linux 系统和 linux 之间的克隆操作,实现linux 和 linux 之间的⽂件传输 
  需要两个linux 
  注:克隆时应当关机后再操作 
  2. 使⽤ scp 下载⽂件和⽬录   
     
    
    
      
     
     
         启用ssh 服务:
 启用ssh 服务:           
         
       
     
     
             
  语法  
  scp [ 选项 ]  ⽤户名  @ linux 主机地址 :/ 资源路径 linux 本地⽂件路径 
 3.用法 
 (1)复制文件 
 步骤1: 查看克隆机的 ip 地址,并且清空 opt ⽬录中的⽂件 
  
 步骤2: 查看原主机的 ip 地址,并且查看 opt ⽬录中的数据 
   
 步骤3: 从原主机上下载/opt/a.txt 到克隆机上的 /opt ⽬录,注意如果有询问,输⼊ yes 
   
  (2)复制目录 
    步骤1. 源主机 opt ⽬录下创建⽬录,并且将 a.txt 、b.txt、 c.txt 复制⼀份在新⽬录中 
  
    步骤2. 在克隆机上使⽤ scp 指令复制⽬录到本地 opt ⽬录,需要添加 -r 选项,⽆法执⾏ 
     第⼆次连接主机,不需要再次输⼊ yes  
  
    -r 代表递归,主要作⽤⽂件夹 
  
  4.scp 上传文件  
  语法  scp [ 选项 ]  本地主机资源路径  { 远程主机 } 用户名 @ 主机 ip: 放置路  
   上传文件,将克隆机中的 a.txt 文件上传到源主机中 
   
  上传目录,把克隆机中的 folder 目录上传到源主机的 opt 目录 
  启用ssh 服务:
 启用ssh 服务:  systemctl start sshd  
  停止ssh 服务: 
  systemctl stop sshd 
 九、计划任务和tar的结合
 1.计划任务  
  crontab [ 选项 ]  
  (1)-l list 查看当前用户的计划任务信息  
  查看计划任务信息命令:crontab -l 
  (2)-e edit 编写计划任务 
  编写计划任务命令:crontab -e 
  编写计划任务  
  crontab  分时日月周 要使用的完整路径  which 命令  
  
  (3)找到 tar 指令的 which 位置  
  [root@localhost /]# which tar  
  /usr/bin/tar  
  
  (4)编辑计划任务 
  
  (5) 在脚本中出现 %, 必须使用转义符 \  
   
  (6)查看备份文件  
  
  2.时间 
  (1)输出时间  
  [root@localhost ~]# date "+%T"  
  17:24:56  
  (2) 输出日期和时间  
  [root@localhost ~]# date "+%F%T"  
  2024-07-1417:25:03  
  (3) 在日期和时间中添加间隔  
  [root@localhost ~]# date "+%F-%T"  
  2024-07-14-17:25:11  
  [root@localhost ~]# date "+%F %T"  
  2024-07-14 17:25:15  
  [root@localhost ~]# date "+%F_%T"  
  2024-07-14_17:25:29  
  (4) 输出年  
  [root@localhost ~]# date "+%Y"  
  2024  
  (5)  输出年月日  
  [root@localhost ~]# date "+%Y%m%d"  
  20240714  
  (6) 输出年月日时分秒  
  [root@localhost ~]# date "+%Y%m%d%H%M%S"  
  20240714172653