#!/bin/bash # @File : delete_history_image.sh # @Author: DJW # @Date : 2023-11-06 14:00 # @Desc : 该脚本实现目标图像目录超过 max_images 张图像就删除旧图像的功能 image_path="/data/sonar_img" max_images=20000 # 获取当前图片数量 image_count=$(find "$image_path" -maxdepth 1 -type f -name "*.jpg" | wc -l) # 如果图片数量超过最大数量,就开始删除 if [ "$image_count" -gt "$max_images" ]; then # 计算要删除的图片数量 images_to_delete=$((image_count - max_images)) # 获取要删除的图片列表,并按修改时间排序 images=$(find "$image_path" -maxdepth 1 -type f -name "*.jpg" -printf "%T@ %p\n" | sort -n | awk '{print $2}') # 删除最旧的图片 echo "Deleting $images_to_delete images..." echo "$images" | head -n "$images_to_delete" | xargs rm -f echo "Done!" else echo "No images to delete." fi