अधिकांश लोग फ़ाइल के विस्तार को देखते हैं और फिर उस एक्सटेंशन से फ़ाइल के प्रकार का अनुमान लगाते हैं। उदाहरण के लिए जब आप gif, jpg, bmp या png के विस्तार के साथ फ़ाइल देखते हैं तो आप एक छवि फ़ाइल के बारे में सोचेंगे और जब आप ज़िप के विस्तार के साथ फ़ाइल देखते हैं तो आपको लगता है कि फ़ाइल को ज़िप संपीड़न उपयोगिता का उपयोग करके संपीड़ित किया गया है।
सच में एक फ़ाइल में एक एक्सटेंशन हो सकता है लेकिन कुछ अलग हो सकता है और यदि फ़ाइल में कोई एक्सटेंशन नहीं है तो आप फ़ाइल प्रकार कैसे निर्धारित कर सकते हैं?
लिनक्स में आप फ़ाइल कमांड का उपयोग कर सही फ़ाइल प्रकार का पता लगा सकते हैं।
फाइल कमांड कैसे काम करता है
प्रलेखन के अनुसार, फ़ाइल कमांड फ़ाइल के खिलाफ परीक्षण के तीन सेट चलाता है:
- फाइल सिस्टम परीक्षण
- जादू परीक्षण
- भाषा परीक्षण
वैध प्रतिक्रिया वापस करने के लिए परीक्षणों का पहला सेट फ़ाइल प्रकार को मुद्रित करने का कारण बनता है।
फाइल सिस्टम परीक्षण एक स्टेट सिस्टम कॉल से वापसी की जांच करते हैं। कार्यक्रम यह देखने के लिए जांच करता है कि फ़ाइल खाली है या नहीं और यह एक विशेष फ़ाइल है या नहीं। यदि सिस्टम हेडर फ़ाइल में फ़ाइल प्रकार मिलता है तो इसे वैध फ़ाइल प्रकार के रूप में वापस कर दिया जाएगा।
जादू परीक्षण फ़ाइल की सामग्री और विशेष रूप से कुछ बाइट्स की जांच करता है जो फ़ाइल प्रकार को निर्धारित करने में मदद करता है। ऐसी फाइलें हैं जिनका उपयोग फ़ाइल फ़ाइल के साथ फ़ाइल से मेल खाने में मदद के लिए किया जाता है और इन्हें / etc / magic, / usr / share / Misc / magic.mgc, / usr / share / Misc / magic में संग्रहीत किया जाता है। आप इन फ़ाइलों को $ HOME / .magic.mgc या $ HOME / .magic नामक अपने घर फ़ोल्डर में फ़ाइल डालकर ओवरराइड कर सकते हैं।
अंतिम परीक्षण भाषा परीक्षण हैं। फ़ाइल को यह देखने के लिए चेक किया गया है कि यह एक टेक्स्ट फ़ाइल है या नहीं। फ़ाइल के पहले कुछ बाइट्स का परीक्षण करके आप यह समझ सकते हैं कि यह एक ASCII, UTF-8, UTF-16 है या किसी अन्य प्रारूप में है जो फ़ाइल को टेक्स्ट फ़ाइल के रूप में निर्धारित करता है। एक बार चरित्र सेट को कम कर दिया गया है, तो फाइल विभिन्न भाषाओं के खिलाफ परीक्षण की जाती है। उदाहरण के लिए फाइल एसी प्रोग्राम है।
यदि परीक्षण में से कोई भी काम आउटपुट बस डेटा नहीं है।
फ़ाइल कमांड का उपयोग कैसे करें
निम्नानुसार फ़ाइल कमांड का उपयोग किया जा सकता है:
फाइल फ़ाइल नाम
उदाहरण के लिए कल्पना करें कि आपके पास file1 नामक एक फ़ाइल है जिसे आप निम्न आदेश चलाएंगे:
फ़ाइल फ़ाइल 1
आउटपुट कुछ ऐसा होगा:
फ़ाइल 1: पीएनजी छवि डेटा, 640 x 341, 8-बिट / रंग आरजीबी, गैर-अंतःस्थापित
दिखाया गया आउटपुट फ़ाइल 1 को एक फ़ाइल फ़ाइल या एक पोर्टेबल नेटवर्क ग्राफ़िक (पीएनजी) फ़ाइल को अधिक सटीक होने के लिए निर्धारित करता है।
अलग-अलग फ़ाइल प्रकार अलग-अलग परिणाम उत्पन्न करते हैं:
- आईएसओ फ़ाइल प्रकार - डॉस / एमबीआर बूट सेक्टर आईएसओ 9660 सीडी-रोम फाइल सिस्टम डेटा 'लेबल' (बूट करने योग्य); विभाजन 2: आईडी = 0xef, स्टार्ट-सीएचएस (0x3ff, 254,63), एंड-सीएचएस (0x3ff, 4,63) प्रारंभकर्ता 1496, 4736 सेक्टर
- ओडीएस फ़ाइल प्रकार - ओपन डॉक्यूमेंट स्प्रेडशीट
- पीडीएफ फाइल प्रकार - पीडीएफ दस्तावेज़, संस्करण 1.4
- सीएसवी फ़ाइल प्रकार - सीएसएलएफ लाइन संकेतकों के साथ, बहुत लंबी लाइनों के साथ ASCII पाठ
फाइल कमांड से आउटपुट को कस्टमाइज़ करें
डिफ़ॉल्ट रूप से, फ़ाइल कमांड फ़ाइल नाम और फिर फ़ाइल के ऊपर सभी विवरण प्रदान करता है। यदि आप फ़ाइल नाम के बिना विवरण चाहते हैं तो दोबारा निम्न स्विच का उपयोग करें:
फ़ाइल -बी फ़ाइल 1
आउटपुट कुछ ऐसा होगा:
पीएनजी छवि डेटा, 640 x 341, 8-बिट / रंग आरजीबी, गैर-अंतःस्थापित
आप फाइलनाम और प्रकार के बीच डिलीमीटर भी बदल सकते हैं।
डिफ़ॉल्ट रूप से, डिलीमीटर एक कोलन (:) है लेकिन आप इसे पाइप प्रतीक जैसे कुछ भी पसंद कर सकते हैं:
फ़ाइल-एफ '|' file1
आउटपुट अब ऐसा कुछ होगा:
file1 | पीएनजी छवि डेटा, 640 x 341, 8-बिट / रंग आरजीबी, गैर-अंतःस्थापित
एकाधिक फाइलों को संभालना
डिफ़ॉल्ट रूप से, आप एक फ़ाइल के खिलाफ फ़ाइल कमांड का उपयोग करेंगे। हालांकि, आप एक फ़ाइल नाम निर्दिष्ट कर सकते हैं जिसमें फाइल कमांड द्वारा संसाधित फ़ाइलों की एक सूची शामिल है:
उदाहरण के तौर पर नैनो संपादक का उपयोग करके testfiles नामक एक फ़ाइल खोलें और इन पंक्तियों को इसमें जोड़ें:
- / Etc / पासवर्ड
- /etc/pam.conf
- / Etc / ऑप्ट
फ़ाइल को सहेजें और निम्न फ़ाइल कमांड चलाएं:
फाइल-एफ testfiles
आउटपुट कुछ ऐसा होगा:
/ आदि / passwd: ASCII पाठ
/etc/pam.conf: ASCII पाठ
/ आदि / ऑप्ट: निर्देशिका
संपीड़ित फ़ाइलें
डिफ़ॉल्ट रूप से जब आप एक संपीड़ित फ़ाइल के विरुद्ध फ़ाइल कमांड चलाते हैं तो आपको आउटपुट कुछ ऐसा दिखाई देगा:
file.zip: ज़िप संग्रह डेटा, कम से कम V2.0 निकालने के लिए
हालांकि यह आपको बताता है कि फ़ाइल एक संग्रह फ़ाइल है जिसे आप वास्तव में फ़ाइल की सामग्री नहीं जानते हैं। आप संपीड़ित फ़ाइल के भीतर फ़ाइलों के फ़ाइल प्रकारों को देखने के लिए ज़िप फ़ाइल के अंदर देख सकते हैं।
निम्न आदेश ज़िप फ़ाइल के अंदर फ़ाइलों के विरुद्ध फ़ाइल कमांड चलाता है:
फ़ाइल-जे फ़ाइल नाम
आउटपुट अब संग्रह के भीतर फाइल प्रकारों की फाइलें दिखाएगा।
सारांश
आम तौर पर, अधिकांश लोग केवल मूल फ़ाइल प्रकार को खोजने के लिए फ़ाइल कमांड का उपयोग करेंगे, लेकिन फ़ाइल कमांड ऑफ़र टर्मिनल विंडो में निम्न सभी संभावनाओं के बारे में अधिक जानकारी के लिए:
आदमी फ़ाइल