2010-10-25 5 views
5

पर बाहर निकलें क्या कोई लिनक्स कमांड लाइन ऐप है जो दो बाइनरी फाइलों की तुलना करेगा और पहले गलत मिलान से बाहर निकल जाएगा?बाइनरी फाइलों की तुलना करने के लिए लिनक्स सीएमडी-लाइन ऐप की आवश्यकता है और 1 मिस-मैच

cmp में छोड़ने का विकल्प नहीं लगता है।

उत्तर

11

cmp में यह विकल्प नहीं है, क्योंकि यह हमेशा पहले विसंगति पर छोड़ देता है।

$ cmp -b /bin/ls /bin/sed 
/bin/ls /bin/sed differ: byte 25, line 1 is 320 M-P 300 [email protected] 
+0

मैं लिनक्स के लिए काफी नया हूं, इसलिए मैं इसे एक बहाना के रूप में उपयोग करूंगा :) ... मैंने इसे -l विकल्प के साथ कोशिश की जो परवाह किए बिना .. मैंने देखा (लेकिन कोशिश नहीं की) -बी विकल्प, becaues मैन पेज केवल "अलग बाइट प्रिंट करें" कहा, छोड़ने का कोई उल्लेख नहीं ... लाइव और सीखो! ... धन्यवाद .. –

+0

'-b' विकल्प चित्रण के लिए बस है, अगर व्यवहार छोड़ दिया गया है तो भी आप चाहते हैं। अफसोस की बात है, कई मानक उपयोगिताओं (जीएनयू के लोगों) में बहुत खराब प्रबंधन हैं। –

4

मुझे लगता है कि आप 3 उपकरणों के उपयोग से जा सकते हैं:

  • cmp
  • diff
  • md5sum

cmp बाइनरी फ़ाइलें और diff के लिए बेहतर है पाठ के लिए बेहतर है फाइलें के लिए बाइनरी फाइलें diff केवल रिपोर्ट करती है कि वे अलग नहीं हैं या नहीं। diff निर्देशिका के लिए भी काम करता है।

पहले दो में से कोई भी आपको चुपचाप की आवश्यकता को पूरा कर सकता है। diff-q स्विच का उपयोग करता है और cmp-s स्विच का उपयोग करता है ताकि आप केवल एक रिटर्न कोड बता सकें: 0 यदि दो फाइलें 1 से मेल नहीं खाती हैं।

cmp भी से बचने के लिए एक अच्छा विकल्प (एक तरह से) पूरी फ़ाइल पढ़ने (अच्छा अगर आप बड़ी फ़ाइलों है) है: यदि आप जानते हैं कि फ़ाइलों को पहले एन लाइनों में या लाइन एन और एम आप कर सकते थे के बीच में अंतर होने के क्योंकि अगर आप MD5 चेकसम हर समय की गणना करने का मौका है कि आप उन फ़ाइलों में से एक को संपादित

cmp file1 file2 10 20 

मैं सूची में md5sum जोड़ा है, तो आप: कर (यानी: पंक्ति के लिए एन = 10 और एम = 20) केवल तभी तुलना कर सकते हैं जब वे मेल खाते हैं या नहीं। इस मामले में मुझे लगता है कि आपके पास तुलना करने के लिए बहुत सारी फाइलें हैं।

+0

धन्यवाद, लेकिन यह * मूक * का मुद्दा इतना नहीं था, क्योंकि यह अनावश्यक रूप से 5 जीबी डेटा के माध्यम से चिपकने वाला नहीं था ... –

+0

फिर, अतिरिक्त जानकारी के लिए धन्यवाद .. मैं इसे एक-ऑफ के लिए चाहता था 2 डीवीडी .iso (और भविष्य के संदर्भ के लिए) की तुलना में, इसलिए मैं निश्चित रूप से मेल-मिलाप पर त्वरित-बाहर निकलने के बाद था ... (एक पूर्ण उत्तर प्रस्तुत करने में आपका अतिरिक्त प्रयास आपको मुझसे एक निशान प्राप्त करता है :) –

संबंधित मुद्दे