این دستور یکی از اون دستورای کاربردی تو لینوکسه که برای کپی یا همگامسازی فایل و پوشهها از یه جا به جای دیگه میشه ازش استفاده کرد.
خب فرقش با دستور cp چیه؟
یکم امکانات بیشتری میده مثلا فقط فایلهایی که تغییر کردن یا جدید هستن رو کپی میکنه که خب زمان کپی رو کاهش میده یا اگه دوس داشتید پروگرس بار نشون میده😁
ساختار کلی دستور اینجوریه:
rsync [options] source destination
فرض کن میخوای یه پوشهی my_folder رو توی backup_folder کپی کنی:
rsync /my_folder/ backup_folder/
حالا فرضا میخوای فقط فایل های جدید تر رو کپی کنی:
rsync -u /my_folder /backup_folder/
آپشن های مهم این دستور ایناس:
1. -a
2. -v
3. -u
4. -r
5. --delete
6. --progress
1- مثل حالت آرشیو میمونه؛ دسترسیها، تایماستمپها و همهچی رو دقیق کپی میکنه.
2- اطلاعات دقیقی از روند کپی بهت میده.
3- حالت بهروزرسانی؛ فقط فایلهای جدیدتر یا تغییر کرده رو کپی میکنه.
4- حالت بازگشتی؛ کل زیرپوشهها رو هم کپی میکنه.
5- هرچی تو مقصد اضافه است و تو مبدا نیست، حذف میکنه. واسه هماهنگی کامل عالیه.
6- وضعیت انتقال رو نشون میده؛ مثلا سرعت، درصد پیشرفت و زمان باقیمونده.
یه نمونه از کاربردش تو پشتیبانی گیری از فایل ها هستش مثلا
میتونی با cron کاری کنی که rsync به صورت خودکار تو یه زمان خاص مثلا هر روز، ساعت 2 صبح اجرا بشه:
0 2 * * * rsync -avu --delete /my_folder /backup_folder
با دستور بالا تو crontab هر روز ساعت 2 صبح از فایلای جدید تر پوشهmy_folder توی backup_folder یه پشتیبان میگیره
@abolfazl_devs