AzLearn

تمرين إعادة البناء

Archive Rotator

أعد كتابة سكربت Bash يصنف أرشيفات قديمة بين الاحتفاظ والمراجعة دون حذف.

bash ~12 دقيقة متوسط
أعد بناء الكود Rebuild

هذا هو الكود. اكتبه بنفسك.

الكود المرجعي
#!/usr/bin/env bash
set -euo pipefail

archives=(
	"site-2026-04-01.tar.gz"
	"site-2026-04-08.tar.gz"
	"site-2026-04-15.tar.gz"
	"site-2026-04-22.tar.gz"
	"site-2026-04-29.tar.gz"
)

keep="${1:-3}"
total=${#archives[@]}

printf 'Keeping the newest %s archives.\n' "$keep"

for index in "${!archives[@]}"; do
	if ((index >= total - keep)); then
		action="keep"
	else
		action="review"
	fi

	printf '%-28s %s\n' "${archives[$index]}" "$action"
done
اكتب هنا