修改时间语法
date -s “2022-01-07 15:00:00”
sed常用匹配用法
去掉行首的.字符 sed-i `s/^.//g` 文件名
在行首添加一个a字符 sed`s/^/a/g` 文件名
在行尾添加一个a字符 sed`s/$/a/` 文件名
在指定行首添加一个a字符 sed `/2022/ic` 文件名
在指定行尾添加一个a字符 sed `/2022/ac` 文件名
其他参数请查看linux系统文件查找与打包压缩详解_W1124824402的博客-CSDN博客
find常用查找用法
显示30天前的文件
find 目录名 -type f -mtime +30 -exec ls -l {} \;
删除30天前的文件
find 目录名 -type f -mtime +30 -exec rm {} \;
查看带有2022过滤字段文件的总大小
find ./ -name “*2022*” | xargs du -cm
将查找或删除的文件打印到xiao.txt文件
touch xiao.txt
find 目录名 -type f -mtime +30 -exec ls -l {} \; | tee xiao.txt
find 目录名 -type f -mtime +30 -exec rm -rf {} \; | tee xiao.txt
查看过滤字段文件的总大小将输出结果打印到xiao.txt文件
find ./ -name “*2022*” | xargs du -cm | tee xiao.txt
ls -ltr 按照创建时间逆序查看文件
ls -l --block-size=m 以M为单位显示文件大小
ll -t 按时间升序排列
查看磁盘使用百分比
df -Th |awk 'NR==7{print $6}' |awk -F '%' '{print $1}' 查看/dev/sda1 磁盘剩余百分比
a=$(df -Th |awk 'NR==7{print $6}' |awk -F '%' '{print $1}') 设置变量
脚本编写
当指定磁盘使用率大于85%时删除指定目录60天前的文件,将每次执行记录按执行时间写入/home/jilu.txt 脚本编写
vim /home/cipan.sh
#!/bin/bash
a=$(df -Th |awk 'NR==8{print $6}' |awk -F "%" '{print $1}')
b=$(date)
if [ $a -ge 85 ];then
# find /home/appadmin -type f -mtime +60 -exec rm -rf {} \;
echo "$b删除60天前的文件" >> /home/jilu.txt
else
echo "$b磁盘剩余空间充足" >> /home/jilu.txt
fi
if判断 比较参数
-eq(equal) 等于
-ge(Greater than or equal to) 大于等于
-le(Less than or equal to) 小于等于
-gt(greater than) 大于
可以写一个计划任务每天检查一下 crontab -e 编写定时任务
写法 每天23点59分执行一下cipan.sh脚本
59 23 * * * /bin/bash /home/cipan.sh
语法格式 :
Minutes Hours Day-of-Month Month Day-of-Week Command
分钟 小时 日 月 周 执行的命令,最好是命令的绝对路径
0-59 0-23 1-31 1-12 0-7
时间:
*:每
*/5 每隔分钟
,:不同的时间段
- : 表示范围