find命令(主要用于⽂件搜索)
1.基本语法
find [⽂件路径] [选项 选项的值]
2.常⻅的选项
-name 根据⽂件的名称搜索⽂件,⽀持通配符*
-type f代表普通⽂件,d代表⽬录
find / -name "user1" //查找user1
/var/spool/mail/user1
/home/user1
yum -y install httpd
find / -name "httpd.conf" -type f
/etc/httpd/conf/httpd.conf
/usr/lib/tmpfiles.d/httpd.conf
3.*通配符
在linux 系统中,如果要查找的⽂件的名称不清晰,可以使⽤部分⽂件名+*搜索
案例 获取/etc/中以.conf结尾的⽂件
find /etc/ -name "*.conf" -type f
/etc/resolv.conf
/etc/libaudit.conf
/etc/depmod.d/dist.conf
/etc/dracut.conf......
⽂件的时间的概念
1使⽤stat命令获取⽂件的时间信息
2.语法 touch -m -d ⽇期时间格式 ⽂件名称
⽂件不存在就创建并修改时间
⽂件存在只配置最后修改时间
touch /opt/a.txt
touch /opt/b.txt -m -d "2024-7-14 00:00"
touch /opt/c.txt -m -d "2024-7-13 00:00"
touch /opt/d.txt -m -d "2024-7-12 00:00"
touch /opt/e.txt -m -d "2024-7-11 00:00"
3.通过⽂件的最后修改时间搜索⽂件
语法 find ⽂件路径 -mtime +days/-days
-mtime 根据⽂件最后修改时间搜索⽂件
+号 搜索⼏天之前的⽂件信息
-号 搜索⼏天之内的⽂件信息
find /opt/ -mtime -3
find /opt/ -mtime +3
删除找到的文件
方法1 find /opt/ -mtime +3 | xargs rm -rf
方法2 find /opt/ -name "*.txt" -type f -mtime -3 -exec rm -rf {} \;
根据⽂件size⼤⼩搜索⽂件
find 路径 -size ⽂件⼤⼩ [常⽤单位 k M G]
size值 搜索等于size的⽂件
-size值 【0,size值)
+size值 (size值,正⽆穷)
扩展命令 dd
使⽤dd创建扩展命令
⽣成指定⼤⼩的测试⽂件
语法
dd if=/dev/zero of=⽂件名称 bs=1M count=1
if表示输⼊⽂件
of表示输出⽂件
bs代表字节为单位的块⼤⼩
count代表被复制的块
其中/dev/zore是⼀个字符设备,会不断地返回0字节的⽂件
find / -size +100M
dd if=/dev/zero of=/opt/a.txt bs=1M count=1
tree命令
创建⽂件列表,将⽂件名称以树的形式展示
1.需要使⽤yum指令进⾏安装
yum -y install tree
2.使用tree命令
tree /var/log
scp传输命令
scp实现linux系统和linux之间的传输操作
实现linux和linux之间的⽂件传输
需要两个linux
scp依赖sshd服务,sshd服务没有启动,或者没有安装sshd服务scp指令会运行失败
1.上传
scp /opt/b.txt root@192.168.2.12:/opt/
2.下载
scp root@192.168.2.12:/opt/a.txt /opt/
计划任务
crontab [选项]
-l list查看当前⽤户的计划任务信息
-e edit编写计划任务
crontab -l
no crontab for root #没有计划任务
0和7都表示星期⽇
crontab -e
*/1 * * * * /usr/bin/echo "我是每分钟都执行的牛皮糖" >> /root/minute.txt //写入文件内
等几分钟查看
时间
date "+%T" //时分秒
14:45:09
date "+%F" //年月日
2024-07-15
date "+%Y" //年
2024
date "+%m" //月
07
date "+%d" //日
15
date "+%Y%m%d" //年月日
20240715
指令中添加时间因素不会覆盖前⾯的⽂件
在脚本中出现%,必须使⽤转义符\
*/1 * * * * /usr/bin/tar -zcvf /tmp/etc $(date "+\%Y\%m\%d\%H\%M\%S").tar.gz /etc/
等几分钟查看