همانطور که میدانید باید همیشه از اطلاعات مهم و شخصی خود Backup گیری کنید فرض کنید که شما از یک پوشه که اطلاعات مهمی در آن قرار داده اید روی یک هارد اکسترنال Backup گرفته اید و چند وقت هست که اطلاعات زیادی را Backup گیری نکرده اید و میخواهید این کار را انجام دهید و میخواهید بدانید چه فایل ها و یا فولدر هایی روی هارد اول شما انباشت شده است که لازم به Backup گیری دارد. در اینمقاله میخواهیم به شما عزیزان نحوه مقایسه دو دایرکتوری در لینوکس را آموزش دهیم. در اکثر سیستم عامل لینوکس ابزاری وجود دارد به نام diff که در حالت عادی کارش مقایسه بین دو فایل (تکرار می کنم فایل نه فولدر) می باشد و می تواند دو فایل را خط به خط مقایسه کند و تفاوت آن دو فایل را در خروجی به شما نشان دهد. حالا سوال این هست که چگونه می توانید دو فولدر یا همان پوشه را با هم مقایسه کنید.
کار با ابزار خط فرمانی diff
دوستان اگر تا کنون با ابزار diff کار نکرده ایدبه توضیحات زیر توجه کنید.. syntax قراردادی برای ابزار diff به صورت زیر می باشد :
$ diff [OPTION]… FILES $ diff options dir1 dir2
به صورت پیش فرض خروجی دستور فوق به صورت الفبایی بر اساس اسم فایل یا subfolder نمایش داده می شود. به عنوان مثال بعدی سوئیچ q به دستور diff میگوید که تنها فایل ها (تکرار می کنم فایل) را که بین دو فولدر دیدی فرق دارد را در خروجی نمایش بده.
$ diff -q directory-1/ directory-2/
ابزار diff به صورت پیش فرض درون subfolder ها را نمیبیند اما شما با استفاده از سوئیچ r می توانید به این ابزار بگویید که subdirectory ها را هم مورد مقایسه قرار بده. به مثال زیر توجه کنید :
$ diff -qr directory-1/ directory-2/
نحوه استفاده از ابزار گرافیکی Meld
ابزار گرافیکی Meld می توان گفت یک ابزار گرافیکی و بصری از ابزار diff است که در دسکتاپ های GNOME می تواند مورد استفاده قرار بگیرد. شما با استفاده از دستورات زیر با توجه به توزیعی که از آن استفاده می کنید می توانید ابزار گرافیکی Meld را روی لینوکس تان نصب کنید :
$ sudo apt install meld [Debian/Ubuntu systems] $ sudo yum install meld [RHEL/CentOS systems] $ sudo dnf install meld [Fedora 22+]
زمانیکه این ابزار را نصب کردید واژه meld را در Ubuntu Dash یا Linux Mint Menu و یا Activities Overview در توزیع های Fedora یا CentOS جستجو کنید و آنرا اجرا کنید. بعد از اجرا شدن شما با صفحه ای شبیه زیر روبرو خواهید شد.
با توجه به تصویر بالا شما می توانید File comparison و Directory comparison و همچنین Version control view را داشته باشید. برای مثال روی Directory comparison کلیک کنید. بعد از کلیک کردن روی این گزینه با صفحه زیر روبرو می شوید :
با توجه به تصویر فوق دایرکتوری های که میخواهید مورد مقایسه قرار دهید را انتخاب کنید. توجه داشته باشید که شما می توانید با زدن تیک گزینه 3way Comparison می توانید دایرکتوری سوم تان را هم انتخاب کنید. زمانیکه دایرکتوری ها را انتخاب کردید بر روی دکمه Compare کلیک کنید. بعد از کلیک کردن روی این دکمه با تصویر زیر روبرو میشوید :