लिनक्स के लिए फ़ाइल तुलना (डिफ) उपकरण
प्रोग्रामर, वेब डेवलपर्स और यहां तक कि लेखकों को अक्सर परिवर्तनों का ट्रैक रखने के लिए एक ही कोड या टेक्स्ट के विभिन्न संस्करणों की तुलना करने की आवश्यकता होती है। ऐसा करने का एक प्रभावी तरीका एक diff टूल के साथ है - एक एप्लिकेशन जो फ़ाइलों या फ़ोल्डरों की तुलना करता है, उनके बीच अंतर दिखाता है और आपके संस्करणों को विलय या पैच करके नई फ़ाइल बनाने में आपकी सहायता करता है। आम तौर पर, आप कमांड लाइन उपकरण के साथ या स्टैंडअलोन एप्लिकेशन का उपयोग करके लिनक्स पर फ़ाइलों की तुलना कर सकते हैं।
डिफ, colordiff और wdiff
diff
Diff नामक कमांड लाइन उपयोगिता प्रत्येक प्रमुख लिनक्स वितरण के भंडार में मौजूद "diffutils" पैकेज का एक हिस्सा है। यह एक साधारण उपकरण है जो लाइन लाइनों की तुलना लाइन से करता है और फ़ाइलों को दो फ़ोल्डरों में भी तुलना कर सकता है। यदि चयनित फाइलें समान हैं, तो diff किसी आउटपुट को प्रिंट नहीं करेगा, और आप इसके विकल्पों को ट्विक कर सकते हैं (उदाहरण के लिए, सफेद स्पेस या लेटर केस को अनदेखा करने के लिए)।
सामान्य वाक्यविन्यास है
diff -option filename1 filename2
परिणाम दो या कॉलम --side-by-side
विकल्प के साथ दिखाए जा सकते हैं। टाइप करके diff विकल्पों की पूरी सूची प्राप्त करें:
diff --help
"Diffutils" पैकेज में diff3
भी शामिल है - एक उपकरण जो तीन फ़ाइलों की तुलना कर सकता है और फ़ाइल के तीन संस्करणों को मर्ज कर सकता है। सबसे अधिक diff बनाने के लिए एक महान गाइड आधिकारिक वेबसाइट पर पाया जा सकता है।
Colordiff
कोलोर्डिफ़ तकनीकी रूप से एक "रैपर" या एक स्क्रिप्ट है जो कॉन्फ़िगरेशन फ़ाइल ("/ etc / colordiffrc" या "/home/user/.colordiffrc") में आपकी प्राथमिकताओं के अनुसार इसे रंगकर भिन्नता के आउटपुट को संशोधित करती है। Colordiff पैकेज अधिकांश वितरण के भंडार में उपलब्ध है।
कोलोर्डिफ़ के पास भिन्न विकल्प हैं, और आप इसका उपयोग सीधे टाइप करके कर सकते हैं:
colordiff -options filename1.txt filename2.txt
या इसके अंतर के आउटपुट को पाइप करके:
diff -u filename1.txt filename2.txt | colordiff
Wdiff
एक और समान और थोड़ा अधिक विशिष्ट उपकरण wdiff
जो फाइल प्रति शब्द शब्द की तुलना कर सकता है (यह एक शब्द को सफेद स्थान से घिरा हुआ कुछ भी परिभाषित करता है)। Wdiff मामले ( -i
) को अनदेखा कर सकता है, दिए गए फ़ाइलों में परिवर्तनों के बारे में सांख्यिकी ( -s
) प्रदान करता है, और स्वरूपण ( -p
) के साथ मतभेदों पर जोर देता है। फाइलों के बीच शब्द मतभेदों का रंग-कोडित अवलोकन पाने के लिए आप कोलोर्डिफ़ और डब्ल्यूडीआईफ़ को भी जोड़ सकते हैं:
wdiff -n filename1.txt filename2.txt | colordiff
ध्यान दें कि यदि फ़ाइलें सक्रिय फ़ोल्डर में नहीं हैं तो आपको पूर्ण पथ दर्ज करना होगा। Wdiff के बारे में और जानने के लिए, आधिकारिक वेबसाइट पर जाएं।
विम और Emacs में डिफ मोड
लोकप्रिय टेक्स्ट एडिटर्स विम और एमैक्स दोनों में एक अंतर्निहित diff मोड है। इसे विम में सक्रिय करने के लिए, आप vimdiff
कमांड के साथ प्रोग्राम शुरू कर सकते हैं और तुलना करने के लिए चार फाइलें जोड़ सकते हैं:
vimdiff फ़ाइल 1 file2 [file3 [file4]]
विम प्रत्येक फ़ाइल को एक अलग विंडो में खुलता है और अंतर को हाइलाइट करता है। आप एक बेहतर अवलोकन के लिए प्रत्येक विंडो को विभाजित करने के तरीके को कॉन्फ़िगर कर सकते हैं।
Emacs उपयोगकर्ता एक diff एक्सटेंशन (जिसे "प्रमुख मोड" कहा जाता है) या एडिफ़ के बीच चुन सकते हैं, थोड़ा और अधिक उन्नत मोड जो आपको तुलनात्मक फ़ाइलों को अंतःक्रियात्मक रूप से बदलने देता है। इसी प्रकार विम के लिए, Emacs अलग-अलग विंडो में फ़ाइलों को दिखा सकता है, तरफ से तरफ, और मतभेदों को हाइलाइट करता है। आप इसे फ़ाइलों को मर्ज करने के लिए भी उपयोग कर सकते हैं, और यह संकुचित फ़ाइलों के साथ भी काम करता है।
दोनों पाठ संपादकों के पास अपेक्षाकृत जटिल वाक्यविन्यास होता है जिसके लिए कुछ सीखने की आवश्यकता होती है, लेकिन यह बहुत शक्तिशाली और पूरी तरह से अनुकूलन योग्य होने के बाद भुगतान करता है।
Kdiff3
Kdiff3 diff के लिए एक ग्राफिकल फ्रंटएंड है, जिसका अर्थ है कि यह diff पर निर्भर करता है और इसके सभी विकल्पों को प्रदान करता है। यह आपको दो फाइलों की तुलना मूल फ़ाइल में करने देता है, और विलय, विभाजन और पूरे फ़ोल्डर, फ़ाइलों या पाठ के चयनित हिस्सों में शामिल हो जाता है। केडीएफ 3 केडीई (डॉल्फ़िन सेवा मेनू का समर्थन करता है) के साथ अच्छी तरह से एकीकृत करता है, लेकिन यह सभी लिनक्स वितरण, विंडोज और मैक ओएस एक्स पर काम करेगा। "सेटिंग्स -> Kdiff3 कॉन्फ़िगर करें" संवाद आपको फ़ोल्डर्स में फ़ाइल तुलना के लिए पैरामीटर सेट करने देता है (तिथि, आकार के अनुसार, द्विआधारी तुलना, या पूर्ण सामग्री) और फ़ाइलों के बीच (मामले, संख्याओं और सफेद जगह को अनदेखा करें)। आप बेहतर अवलोकन के लिए शब्द रैप और लाइन नंबर टॉगल कर सकते हैं और मतभेदों को चिह्नित करने के लिए रंग सेटिंग्स समायोजित कर सकते हैं।
Kdiff3 के बारे में सबसे अच्छी बात यह है कि यह आपको किसी भी फाइल से टेक्स्ट को मुख्य विंडो में सीधे पेस्ट करने देता है, जब आप केवल "ऑन-द-फ्लाई" टेक्स्ट की तुलना करना चाहते हैं तो फ़ाइलों को बनाने की आवश्यकता को समाप्त कर देते हैं। विस्तृत Kdiff3 हैंडबुक ऑनलाइन उपलब्ध है।
फैलाना
पहली नजर में यह सरल लगता है, लेकिन डिफ्यूज इस सूची के अन्य उपकरणों के समान ही शक्तिशाली है। यह एक साइड-बाय-साइड व्यू में फ़ाइलों की असीमित संख्या की तुलना कर सकता है और अंतर को सारांशित कर सकता है। आप फ़ाइलों को सीधे डिफ्यूज से संपादित कर सकते हैं और विलय और लाइन मिलान कर सकते हैं। यह सिंकैक्स हाइलाइटिंग का समर्थन करता है (गिट, मर्कुरियल और सबवर्जन सहित कई संस्करण नियंत्रण प्रणालियों के साथ एकीकरण प्रदान करता है - ताकि आप फ़ाइलों को सिंक में रखने में मदद कर सकें। डिफ्यूज लिनक्स, विंडोज और मैक ओएस एक्स पर काम करता है, और आप प्रोजेक्ट वेबसाइट से इंस्टॉलेशन पैकेज डाउनलोड कर सकते हैं।
Diffmerge
यह एप्लिकेशन लिनक्स, विंडोज और ओएस एक्स पर काम करता है, विंडोज एक्सप्लोरर के साथ अच्छी तरह से एकीकृत करता है, और कुछ वितरण के लिए इंस्टॉलर पैकेज प्रदान करता है। आप डिफमेज के भीतर फ़ाइलों को संपादित कर सकते हैं, स्वचालित रूप से फ़ाइल संस्करणों को मर्ज कर सकते हैं और एक नई फ़ाइल में अंतर निर्यात कर सकते हैं। यह तीन फाइलों और दो फ़ोल्डरों की तुलना कर सकता है और दिखा सकता है कि फाइलें समान हैं या नहीं, यह जांचते समय उपयोगी हो सकता है कि कोई rsync बैकअप सही तरीके से किया गया था या नहीं।
सेटिंग्स संवाद आपको विभिन्न फ़ाइल प्रकारों को संभालने के लिए कस्टम नियमों को परिभाषित करने देता है। डिफर्मेज मुफ्त है, लेकिन यह कभी-कभी एक भुगतान पंजीकरण कुंजी मांगेगा। यह कुछ उपयोगकर्ताओं को दूर कर सकता है; सौभाग्य से, वे इस सूची से एक और टूल चुन सकते हैं क्योंकि वे सभी एक ही विकल्प को कम या कम प्रदान करते हैं।
मिलकर एक हो जाना
अन्य diff टूल्स से पाइथन-निर्मित इंटरफ़ेस में पैक पैक शामिल हैं। आप स्रोत और विंडोज संस्करण डाउनलोड कर सकते हैं, और यदि आप उबंटू, फेडोरा या एसयूएसई उपयोगकर्ता हैं तो पैकेज को रिपॉजिटरीज़ में ढूंढें। मेल्ड के बारे में एक अच्छी बात यह है कि आपको इसे इंस्टॉल करने की आवश्यकता नहीं है - बस निष्पादन योग्य चलाएं और इसे पोर्टेबल ऐप के रूप में उपयोग करें।
मेल्ड फ़ाइल संपादन का समर्थन करता है, नियमित अभिव्यक्तियों के साथ फ़िल्टरिंग, तीन फ़ाइलों की तुलना और विलय, और दो या तीन फ़ोल्डरों और उनकी सामग्री की तुलना, और तीरों और रंग-कोडिंग का उपयोग करके मतभेदों के उपयोगी दृश्यता भी प्रदान करता है। यदि आप गिट, मर्कुरियल या एसवीएन जैसे वर्जन कंट्रोल सिस्टम का उपयोग करते हैं, तो मैल्ड आपकी फाइलों का प्रबंधन कर सकता है, बदलावों की जांच कर सकता है और काम और अपडेट कर सकता है। मेल्ड नियमित रूप से अपडेट किया जाता है, इसलिए हम भविष्य के संस्करणों में नई सुविधाओं की उम्मीद कर सकते हैं।
अन्य विकल्प
यदि आप इस उद्देश्य के लिए कोई नया एप्लिकेशन इंस्टॉल करने की तरह महसूस नहीं करते हैं और आपको उन्नत फ़ाइल तुलना सुविधाओं की आवश्यकता नहीं है, तो आप कई ऑनलाइन डिफ टूल का प्रयास कर सकते हैं जो निःशुल्क हैं और केवल एक वेब ब्राउज़र की आवश्यकता है।
क्या आप एक diff उपकरण का उपयोग करते हैं जो इस सूची में नहीं है? हमें इसके बारे में टिप्पणी द्वारा बताएं।
छवि क्रेडिट: टीज़र छवि स्रोत