लिनक्स में, मैं उस प्रारूप को कैसे निर्धारित कर सकता हूं जिसका उपयोग किसी दिए गए टारबॉल को बनाने के लिए किया गया था?
मैं यह जानना चाहता हूं कि किसी दिए गए संग्रह का उपयोग करके बनाया गया था या नहीं POSIX या बैल की आकृति का बारहसिद्धान्त प्रारूप।
मैं पहले से ही पढ़ा है GNU टार के लिए मैन पेज, जो यह बताता है कि निर्माण के दौरान प्रारूप को कैसे नियंत्रित किया जाए। हालाँकि, मैं मौजूदा फ़ाइल के प्रारूप को देखने के तरीके के बारे में कुछ नहीं देखता।
उत्तर:
जवाब के लिए 3 № 1आप उपयोग कर सकते हैं file
लिनक्स के तहत असम्पीडित संग्रह के फ़िंगरप्रिंट को देखने के लिए (फ़ाइल ने "संपीड़न परत से परे सहकर्मी को जीत लिया है, इसलिए इसे पहले हटा दें):
$ tar --format=posix -cf posix.tar foo # create test posix archive
$ tar --format=gnu -cf gnu.tar foo # create test gnu archive
$ file gnu.tar posix.tar
gnu.tar: POSIX tar archive (GNU)
posix.tar: POSIX tar archive
यदि संग्रह संपीड़ित है, तो इसे पहले हटा दें:
$ tar --format=posix -czf posix.tar.gz foo # create test gzip posix archive
$ tar --format=gnu -czf gnu.tar.gz foo # create test gzip gnu archive
$ gunzip posix.tar.gz
$ gunzip gnu.tar.gz
$ file gnu.tar posix.tar
gnu.tar: POSIX tar archive (GNU)
posix.tar: POSIX tar archive
GNU एक पुराने POSIX प्रारूप पर आधारित है, इसीलिए यह कहता है कि यह दोनों है।
नॉटी ग्रिट्टी विवरण के लिए, प्रारूप को GNU टार मैनुअल में वर्णित किया गया है यहाँ और अधिक जानकारी यहाँ.