TH小破站

  • 首页
  • 容器
    • 认识Docker
    • DockerFile详解
  • k8s
    • 认识Kubernetes
    • Kubernetes部署--(kubeadm方式)
    • kubeasz部署k8s集群
    • Ansible-binary部署k8s集群-1.31.2
  • Ceph
    • 认识分布式存储
    • CPEH部署
  • CI/CD
    • DevOps认识
    • 部署--Gitlab
  • ELK
    • ELK简介
    • Elasticsearch
    • Kibana部署
    • Logstash
    • ELK--收集 tomcat 日志(实战)
  • HD
    • 认识--大数据
    • Hadoop-单机部署
    • Hadoop-伪分布部署
    • Hadoop-完全分布部署
    • Hadoop-(HA)完全分布部署
    • Ambari自动部署--Hadoop
  • Nginx
    • Nginx功能介绍
    • Nginx安全选项
    • Nginx配置文件简单介绍
    • 网站服务器部署
  • 监控
    • ZABBIX-部署(yum)
    • ZABBIX-编译安装
  • 云计算
    • KVM 概述
    • OpenStack企业级部署(T版)
    • OpenStack之dashboard部署
    • OpenStack-controller的高可用
    • openstack(Caracal版_ubuntu版本)部署
  • 数据库
    • mariadb与mysql
    • mysql主从
    • MySQL--冷备(实战)
    • MySQL--热备(dump表)
    • MySQL--热备(dump库)
    • 数据恢复实战案例
    • Xtrabackup实现MySql8.x全量备份
    • MyCat实现数据库读写分离
    • MHA实现数据库高可用
    • Percona XtraDB(PXC)实现数据库集群高可用
    • 数据库压力测试
    • PostgreSQL 基操
    • PostgreSQL备份恢复
    • PostgreSQL高可用
    • MongDB安装配置基础使用
    • MongoDB实现复制集
    • MongoDB备份还原
  • 自动化
    • ssh远程服务原理及配置
    • Ansible剧本文件应用
    • Ansible管理服务介绍
    • Ansible自动化部署node_exporter(包含升级,回滚)
    • Saltstack-部署安装
  • 脚本
    • 一键查看服务器资源利用率
    • 一键生成SSL证书
    • 保存指定数量的文件/目录
    • 初始化服务器
    • 扫描可用IP
    • 批量分发SSH密钥
    • 监控多主机磁盘脚本
    • 一键安装MySQL8.x脚本
    • Python脚本监控ES集群
    • 资源巡检脚本
    • 查看各用户使用的cpu占比
热衷于分享
架构师成长之路 !!!
  1. 首页
  2. 脚本
  3. 正文

如何通过SHELL脚本保留指定文件数或者目录数

2023年11月24日 1278点热度 0人点赞 0条评论

保留指定文件数或目录数可以带来以下好处:

1. 空间管理:限制文件或目录的数量可以帮助有效管理存储空间。特别是在有限的存储空间中,限制文件或目录的数量可以确保空间被合理利用,避免过度占用空间。

2. 组织结构:限制文件或目录的数量可以促使用户更加有条理地组织文件和目录。通过限制数量,用户被迫思考如何优化文件和目录的结构,使其更加清晰和易于管理。

3. 提高性能:过多的文件或目录可能会导致系统性能下降。限制数量可以减少系统资源的占用,提高系统的响应速度和效率。

4. 安全性:限制文件或目录的数量可以减少潜在的安全风险。过多的文件或目录可能增加数据泄露、文件丢失或被恶意软件感染的风险。通过限制数量,可以降低这些风险的发生概率。

5. 简化备份和恢复:限制文件或目录的数量可以简化备份和恢复过程。当需要备份或恢复数据时,数量较少的文件或目录可以减少操作的复杂性和时间成本。

本人建议使用这个方法,不用find进行查找删除,对某一些业务会存在一定风险!

`准备文件,注意看文件日期`
[root@master-a ~]# ls -lrt /tmp/test/ 
total 0
-rw-r--r-- 1 root root 0 Nov 24 20:04 fell2.txt
-rw-r--r-- 1 root root 0 Nov 24 20:04 fell1.txt
-rw-r--r-- 1 root root 0 Nov 24 20:06 feoo3.txt
-rw-r--r-- 1 root root 0 Nov 24 20:06 feoo2.txt
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail3.txt
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail2.txt
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail1.txt
`编写脚本`
[root@master-a script]# cat del_file.sh 
#!/bin/bash
# ------------------------------------------
# Filename:         del_file.sh
# Version:          1.1
# Date:             2023/11/24
# Author:           tanghao
# Email:            2826588067@qq.com
# Description:      This is the script
# Copyright:        2023 tanghao
# License:          GPL
# ------------------------------------------
num=`ls -rt /tmp/test/ | wc -l`
#保留3个目录/文件
if [ $num -gt 3  ]; then
  let numFile=$num-3
  delFile=`ls -rt /tmp/test/ |head -$numFile`
  for k in $delFile ;do
    rm -rf /tmp/test/$k
  done
fi
`检查语法`
[root@master-a script]# bash -n del_file.sh 
`运行脚本`
[root@master-a script]# bash del_file.sh 
`查看脚本运行效果`
[root@master-a ~]# ls -lrt /tmp/test/ 
total 0
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail3.txt
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail2.txt
-rw-r--r-- 1 root root 0 Nov 24 20:08 fail1.txt
`编写定时任务(每天凌晨2点执行一次脚本)`
[root@master-a script]# crontab -e
0 2 * * * bash /script/del_file.sh

 

标签: 暂无
最后更新:2023年11月27日

tanghao946

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2025 TH小破站. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

渝ICP备2023013789号

渝公网安备50011702500926号