以下是一个示例的 Shell 脚本,可以实现将昨天创建的文件移动到 A 目录中,并在每月最后一天进行压缩:

#!/bin/bash

# 获取昨天的日期
yesterday=$(date -d 'yesterday' +'%Y-%m-%d')

# 获取当前日期
current_date=$(date +'%Y-%m-%d')

# 获取当前月份
current_month=$(date +'%m')

# 获取当月最后一天
last_day_of_month=$(date -d "$(date -d "$(date +'%Y-%m-01') +1 month" +'%Y-%m-01') -1 day" +'%Y-%m-%d')

# 创建 A 目录(如果不存在)
mkdir -p A

# 移动昨天创建的文件到 A 目录中
mv '$yesterday'* A/

# 当天是当月的最后一天时,进行压缩
if [[ "$current_date" == "$last_day_of_month" ]]; then
    tar -czvf "${current_month}.tar.gz" A/
fi

注意事项:

  1. 请确保将该脚本设置为可执行文件(chmod +x script.sh)。
  2. 请根据实际需求修改 A 目录的路径和压缩文件的命名规则。
  3. 该脚本假设文件名中包含了日期信息,如 2021-01-01_file.txt。
  4. 该脚本使用的日期格式为 "'%Y-%m-%d'",请根据实际情况修改日期格式。
Shell 脚本:自动移动昨日文件到 A 目录并每月压缩

原文地址: https://www.cveoy.top/t/topic/loKw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录