یک اسکریپت Bash بنویسید که از یک پوشه مشخص نسخه پشتیبان فشرده (tar.gz) با نام شامل تاریخ بسازد و نسخههای پشتیبان قدیمیتر از N روز را حذف کند
8.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:45 0.0
برای حل این مسئله از دستورات پایهای مثل tar برای فشردهسازی، دستور date برای ساخت نام فایل شامل تاریخ، و find با گزینه -mtime برای پیدا کردن و حذف فایلهای قدیمی استفاده کنید. اسکریپت باید متغیرهایی برای مسیر منبع، مسیر ذخیرهسازی پشتیبان و مقدار N داشته باشد، خطاها را بررسی کند و قبل از حذف واقعی فایلها با گزینهٔ --dry-run یا نمایش لیست برای تست اجرا شود؛ در صورت نیاز میتوان آن را با cron زمانبندی کرد. نکتهها: از نامگذاری یکنواخت شامل YYYY-MM-DD استفاده کنید، دسترسیها را بررسی کنید و خروجی و کد بازگشتی دستورات را برای تشخیص خطاها لاگ کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای تمایز نسخهها، نام پشتیبان را با تاریخ به فرمت YYYY-MM-DD بسازید و مسیرها را با نقل قول بگذارید تا فضاهای خالی مشکلی ایجاد نکنند. قبل از حذف واقعی با گزینهٔ --dry-run یا نمایش لیست، روند پشتیبانگیری و حذف را تست کنید و خروجی و کد بازگشتی دستورات را لاگ کنید. از set -euo pipefail استفاده کنید، مجوزهای دسترسی برای پوشههای منبع و مقصد را بررسی کنید و نامهای حاوی فاصله را به درستی مدیریت کنید. برای cron زمانبندی، خروجی لاگ را به فایل مشخصی هدایت کنید تا خطاها را پیگیری کنید.
گزارش