स्क्रिप्ट में फ़ाइल को सत्यापित करने के लिए md5sum का उपयोग करें


15

मैं एक फ़ाइल का उपयोग करके सत्यापित करना चाहता हूं md5sum -c file.md5। मैं ऐसा हाथ से कर सकता हूं, लेकिन मुझे नहीं पता कि स्क्रिप्ट में वैधता की जांच कैसे की जाती है।

जवाबों:


25

आप md5sumवापसी की स्थिति का उपयोग कर सकते हैं :

if md5sum -c file.md5; then
    # The MD5 sum matched
else
    # The MD5 sum didn't match
fi

चीजों को साफ करने के लिए, आप --statusबता सकते हैं कि md5sum(शायद GNU का संस्करण केवल चुप हो):

if md5sum --status -c file.md5; then
    # The MD5 sum matched
else
    # The MD5 sum didn't match
fi

यदि आवश्यक हो तो छोटे रूप में भी काम करता है:

md5sum --status -c file.md5 && echo OK

md5sum --status -c file.md5 && echo OKदुर्भाग्य से लापता या अतिरिक्त फ़ाइलों की जांच नहीं करता है
एरिक मार्टिनो

1
@ क्या md5sumआपके पास क्या संस्करण है? यदि मैंने जाँच की है सिस्टम पर अनुपलब्ध फ़ाइलों के बारे में, md5sum --status -c file.md5 && echo OKयदि कोई फ़ाइल सूचीबद्ध नहीं है, तो वह विफल रहता है (और "ओके" प्रिंट नहीं करता है) file.md5। अतिरिक्त फ़ाइलों के बारे में, md5sum -cकभी भी अतिरिक्त फ़ाइलों के बारे में शिकायत नहीं करता है, यह केवल दिए गए चेकसम फ़ाइल में सूचीबद्ध फ़ाइलों की जाँच करता है।
स्टीफन किट

1
md5sum --status -c file.md5 && echo OKपैदावार md5sum: stat 'foo': No such file or directoryऔर OKएक मैक पर
एरिक मार्टिनो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.