ایستگاه های کاری آنلاین OnWorks Linux و Windows

لوگو

میزبانی آنلاین رایگان برای ایستگاه های کاری

<قبلی | فهرست | بعدی>

تفاوت

مانند COMM برنامه تفاوت برای تشخیص تفاوت بین فایل ها استفاده می شود. با این حال، تفاوت ابزار بسیار پیچیده‌تری است که از فرمت‌های خروجی بسیاری پشتیبانی می‌کند و توانایی پردازش مجموعه‌های بزرگ فایل‌های متنی را در یک زمان دارد. تفاوت اغلب توسط توسعه دهندگان نرم افزار برای بررسی تغییرات بین نسخه های مختلف کد منبع برنامه استفاده می شود و بنابراین توانایی بررسی بازگشتی دایرکتوری های کد منبع را دارد که اغلب به آن ها می گویند. درختان منبع. یکی از استفاده های رایج برای تفاوت ایجاد است فایل های متفاوت or تکه که توسط برنامه هایی مانند وصله (که به زودی در مورد آن صحبت خواهیم کرد) برای تبدیل یک نسخه از یک فایل (یا فایل ها) به نسخه دیگر.

اگر استفاده کنیم تفاوت برای مشاهده فایل های نمونه قبلی:


[me@linuxbox ~]$ diff file1.txt file2.txt

1d0

< a 4a4

> و

[me@linuxbox ~]$ diff file1.txt file2.txt

1d0

< a 4a4

> و


ما سبک پیش‌فرض خروجی آن را می‌بینیم: شرح مختصری از تفاوت‌های بین دو فایل. در قالب پیش‌فرض، هر گروه از تغییرات قبل از یک علامت است دستور را تغییر دهید در شکل محدوده عملیات برد برای توصیف موقعیت ها و انواع تغییرات مورد نیاز برای تبدیل فایل اول به فایل دوم:


جدول 20-4: تفاوت دستورات تغییر


تغییر توضیحات

تغییر توضیحات

r1ar2 خطوط را در موقعیت اضافه کنید r2 در فایل دوم به موقعیت

r1 در فایل اول.


تصویر

r1cr2 خطوط را در موقعیت تغییر دهید (جایگزین کنید). r1 با خطوط در موقعیت r2 در فایل دوم


تصویر

r1dr2 خطوط موجود در فایل اول را در موقعیت حذف کنید r1، که در محدوده ظاهر می شد r2 در فایل دوم


تصویر


در این قالب، محدوده، فهرستی از خط شروع و پایان با کاما است. در حالی که این فرمت پیش فرض است (بیشتر برای سازگاری با POSIX و سازگاری با نسخه های سنتی یونیکس تفاوت، به اندازه سایر قالب های اختیاری به طور گسترده مورد استفاده قرار نمی گیرد. دو مورد از محبوب‌ترین فرمت‌ها عبارتند از قالب متن و قالب واحد.

هنگامی که با استفاده از قالب زمینه ( -c گزینه)، این را خواهیم دید:


[me@linuxbox ~]$ diff -c file1.txt file2.txt

*** file1.txt 2008-12-23 06:40:13.000000000 -0500

--- file2.txt 2008-12-23 06:40:34.000000000 -0500

***************

*** 1,4،XNUMX ****

- آ ب پ ت

--- 1,4،XNUMX ----

bcd

+ و

[me@linuxbox ~]$ diff -c file1.txt file2.txt

*** file1.txt 2008-12-23 06:40:13.000000000 -0500

--- file2.txt 2008-12-23 06:40:34.000000000 -0500

***************

*** 1,4،XNUMX ****

- آ ب پ ت

--- 1,4،XNUMX ----

bcd

+ و


خروجی با نام دو فایل و مهر زمانی آنها شروع می شود. فایل اول با ستاره و فایل دوم با خط تیره مشخص شده است. در طول باقیمانده فهرست، این نشانگرها فایل های مربوطه خود را نشان خواهند داد. در مرحله بعد، گروه‌هایی از تغییرات، از جمله تعداد پیش‌فرض خطوط زمینه اطراف را می‌بینیم. در گروه اول می بینیم:

*** 1,4،XNUMX ***

که خطوط 1 تا 4 را در فایل اول نشان می دهد. بعداً می بینیم:

--- 1,4،XNUMX ---

که خطوط 1 تا 4 را در فایل دوم نشان می دهد. در یک گروه تغییر، خطوط با یکی از چهار شاخص شروع می شوند:


جدول 20-5: تفاوت شاخص های تغییر قالب زمینه


معنی شاخص

معنی شاخص

خالی یک خط نشان داده شده برای زمینه. نشان دهنده تفاوت بین دو فایل نیست.


تصویر

- یک خط حذف شده است. این خط در فایل اول ظاهر می شود اما در فایل دوم ظاهر نمی شود.


تصویر


تصویر

+ یک خط اضافه شد. این خط در فایل دوم ظاهر می شود اما در فایل اول ظاهر نمی شود.


تصویر

! یه خط عوض شد دو نسخه از خط، هر کدام در بخش مربوطه خود از گروه تغییر نمایش داده می شود.


تصویر


قالب یکپارچه شبیه قالب زمینه است اما مختصرتر است. با مشخص شده است -u گزینه:


[me@linuxbox ~]$ diff -u file1.txt file2.txt

--- file1.txt 2008-12-23 06:40:13.000000000 -0500

+++ file2.txt 2008-12-23 06:40:34.000000000 -0500

-1,4،1,4 +XNUMX،XNUMX

-آ ب پ ت

+e

[me@linuxbox ~]$ diff -u file1.txt file2.txt

--- file1.txt 2008-12-23 06:40:13.000000000 -0500

+++ file2.txt 2008-12-23 06:40:34.000000000 -0500

-1,4،1,4 +XNUMX،XNUMX

-آ ب پ ت

+e


قابل توجه ترین تفاوت بین زمینه و قالب های یکپارچه حذف خطوط تکراری زمینه است که نتایج قالب یکپارچه را کوتاه تر از قالب زمینه می کند. در مثال بالا، ما مُهرهای زمانی فایل را می‌بینیم، مانند مُهرهای قالب متن، و به دنبال آن رشته -1,4،1,4 +XNUMX،XNUMX. این نشان دهنده خطوط در فایل اول و خطوط در فایل دوم است که در گروه تغییر توضیح داده شده است. پس از این، خود خطوط، با سه خط پیش فرض زمینه قرار دارند. هر خط با یکی از سه کاراکتر ممکن شروع می شود:


جدول 20-6: تفاوت شاخص های تغییر فرمت یکپارچه


معنی شخصیت

معنی شخصیت

خالی این خط توسط هر دو فایل مشترک است.


تصویر

- این خط از فایل اول حذف شد.


تصویر

+ این خط به فایل اول اضافه شد.


تصویر


برترین سیستم عامل Cloud Computing در OnWorks: