#!/usr/bin/env bash set -u echo echo "========================================" echo " APT Backup Cleanup Script" echo "========================================" echo for CTID in $(pct list | awk 'NR>1 {print $1}'); do STATUS=$(pct status "$CTID" 2>/dev/null | awk '{print $2}') NAME=$(pct config "$CTID" 2>/dev/null | awk -F': ' '/^hostname:/ {print $2}') echo "----------------------------------------" echo "Container: $CTID${NAME:+ ($NAME)}" echo "Status: $STATUS" if [[ "$STATUS" != "running" ]]; then echo "SKIP: Container is not running." continue fi OS_ID=$(pct exec "$CTID" -- sh -c \ '. /etc/os-release 2>/dev/null && echo "$ID"' \ 2>/dev/null || true) if [[ "$OS_ID" != "debian" ]]; then echo "SKIP: Not Debian." continue fi echo "Cleaning APT backup files..." pct exec "$CTID" -- sh -c ' rm -f "/etc/apt/apt.conf.d/01proxy.backup-\$(date +%Y%m%d-%H%M%S)" rm -f /etc/apt/sources.list.d/docker.sources.bak-* rm -f /etc/apt/sources.list.d/docker.list.bak-* ' echo "OK: Cleanup complete." echo done echo "========================================" echo " Finished" echo "========================================"