SHAR (SHell ARchive) प्रारूप एक फ़ाइल संग्रहण और संपीड़न प्रारूप है जो आमतौर पर Unix और Unix जैसे ऑपरेटिंग सिस्टम पर उपयोग किया जाता है। इसे आसान संग्रहण और प्रसारण के लिए कई फ़ाइलों और निर्देशिकाओं को एक एकल संग्रह फ़ाइल में पैकेज करने के एक सरल तरीके के रूप में विकसित किया गया था। SHAR प्रारूप परिणामी संग्रह के समग्र आकार को कम करने के लिए संग्रहीत फ़ाइलों के वैकल्पिक संपीड़न की अनुमति देता है।
एक SHAR संग्रह अनिवार्य रूप से एक शेल स्क्रिप्ट है जिसमें मूल निर्देशिका संरचना और फ़ाइलों को फिर से बनाने के लिए आदेशों की एक श्रृंखला होती है। जब SHAR फ़ाइल निष्पादित की जाती है, तो शेल आदेशों की व्याख्या करता है और फ़ाइलों को उनके मूल स्थानों पर निकालता है। यह SHAR संग्रह को विशेष संग्रहण उपकरणों की आवश्यकता के बि ना बनाना और निकालना आसान बनाता है, जब तक कि एक Unix शेल उपलब्ध हो।
एक SHAR संग्रह की संरचना में एक शीर्षलेख, फ़ाइल मेटाडेटा और वास्तविक फ़ाइल सामग्री शामिल होती है। शीर्षलेख में आमतौर पर शेल स्क्रिप्ट के लिए दुभाषिया को निर्दिष्ट करने के लिए एक शबैंग लाइन (जैसे, `#!/bin/sh`) शामिल होती है, इसके बाद कोई भी आवश्यक शेल कमांड या चर घोषणाएँ होती हैं। शीर्षलेख में संग्रह को निकालने के लिए टिप्पणियाँ या निर्देश भी शामिल हो सकते हैं।
शीर्षलेख के बाद, SHAR संग्रह में संग्रहीत प्रत्येक फ़ाइल या निर्देशिका के लिए अनुभागों की एक श्रृंखला होती है। प्रत्येक अनुभाग फ़ाइल के बारे में मेटाडेटा से शुरू होता है, जैसे कि इसका नाम, अनुमतियाँ, स्वामित्व और टाइमस्टैम्प। यह मेटाडेटा शेल कमांड का उपयोग करके दर्शाया जाता है जो फ़ाइल निकाले जाने पर उपयुक्त विशेषताएँ सेट करते हैं।
मेटाडेटा के बाद, फ़ाइल की वास्त विक सामग्री संग्रह में शामिल की जाती है। फ़ाइल सामग्री को आमतौर पर `uuencode` या `base64` एन्कोडिंग योजनाओं का उपयोग करके एन्कोड किया जाता है ताकि यह सुनिश्चित हो सके कि सामग्री शेल स्क्रिप्ट की पाठ-आधारित प्रकृति के अनुकूल है। एन्कोड की गई सामग्री को छोटे भागों में विभाजित किया जाता है और स्क्रिप्ट में `echo` या `printf` कमांड की एक श्रृंखला के रूप में मुद्रित किया जाता है।
यदि SHAR संग्रह में निर्देशिकाएँ शामिल हैं, तो निर्देशिका संरचना `mkdir` कमांड और उपयुक्त मेटाडेटा सेटिंग्स के संयोजन का उपयोग करके फिर से बनाई जाती है। फिर प्रत्येक निर्देशिका के भीतर की फ़ाइलों को ऊपर वर्णित तरीके से संग्रह में जोड़ा जाता है।
वैकल्पिक रूप से, SHAR संग्रह में परिणामी फ़ाइल के आकार को कम करने के लिए संपीड़न शामिल हो सकता है। SHAR के साथ उपयोग की जाने वाली सामान्य संपीड़न विधियों में `gzip`, `bzip2` और `compress` शामिल हैं। संपीड़न को आमतौर पर व्यक्तिगत फ़ाइलों पर लागू किया जाता है इससे पहले कि उन्हें एन्कोड किया जाए और संग्रह में जोड़ा जाए। जब SHAR संग्रह निकाला जाता है, तो संपीड़ित फ़ाइलें शेल स्क्रिप्ट द्वारा स्वचालित रूप से डीकंप्रेस हो जाती हैं।
एक SHAR संग्रह बनाने के लिए, आप `shar` कमांड का उपयोग कर सकते हैं, जो अधिकांश Unix और Unix जैसे सिस्टम पर उपलब्ध है। SHAR संग्रह बनाने के लिए मूल वाक्यविन्यास है: `shar [options] file1 file2 directory1 ... > archive.shar`। निर्दिष्ट फ़ाइलें और निर्देशिकाएँ परिणामी संग्रह फ़ाइल में शामिल की जाएंगी।
एक SHAR संग्रह को निकालना संग्रह के भीतर निहित शेल स्क्रिप्ट को निष्पादित करने जितना ही सरल है। यह `chmod` कमांड का उपयोग करके SHAR फ़ाइल को निष्पादन योग्य बनाकर और फिर इसे एक स्क्रिप्ट के रूप में चलाकर किया जा सकता है: `chmod +x archive.shar && ./archive.shar`। शेल स्क्रिप्ट में आदेशों की व्याख्या करेगा और मूल फ़ाइलों और निर्देशिकाओं को फिर से बनाएगा।
SHAR प्रारूप का एक लाभ इसकी सादगी और सुवाह्यता है। SHAR संग्रह किसी भी सिस्टम पर Unix शेल के साथ बनाए और निकाले जा सकते हैं, अतिरिक्त सॉफ़्टवेयर की आवश्यकता के बिना। हालाँकि, SHAR प्रारूप में `tar` या `zip` जैसे अधिक उन्नत संग्रहण प्रारूपों की तुलना में कुछ सीमाएँ हैं। SHAR संग्रह में व्यक्तिगत फ़ाइलों तक यादृच्छिक पहुँच, अखंडता जाँच या अंतर्निहित एन्क्रिप्शन जैसी सुविधाओं का अभाव है।
अपनी सीमाओं के बावजूद, SHAR प्रारूप कुछ परिदृश्यों में उपयोगी रहता है, खासकर जब Unix-आधारित सिस्टम से निपटना हो या जब सादगी वांछित हो। यह एकल, स्व-निकालने वाले संग्रह के रूप में फ़ाइलों को पैकेज करने और वितरित करने का एक सीधा तरीका प्रदान करता है।
सारांश में, SHAR संग्रह प्रारूप कई फ़ाइलों और निर्देशिकाओं को एक एकल शेल स्क्रिप्ट संग्रह में पैकेज करने का एक सरल और सुवाह्य तरीका है। यह वैकल्पिक संपीड़न की अन ुमति देता है और मानक Unix शेल कमांड का उपयोग करके आसानी से बनाया और निकाला जा सकता है। अन्य संग्रहण प्रारूपों की तुलना में उन्नत सुविधाओं की कमी के बावजूद, SHAR बुनियादी संग्रहण और वितरण आवश्यकताओं के लिए Unix पारिस्थितिकी तंत्र में एक उपयोगी उपकरण बना हुआ है।
फ़ाइल संपीड़न एक प्रक्रिया है जो डेटा फ़ाइलों के आकार को कुशलता के लिए कम करती है। इसका उपयोग विभिन्न एल्गोरिदमों का उपयोग करके डेटा को संकुचित करने के लिए होता है, जो अक्सर डेटा के आकार को मूल जानकारी के बिना चौंकसी से कम करता है।
फ़ाइल संपीड़न के दो मुख्य प्रकार हैं: नुकसानरहित और नुकसानदायक। जहाँ हर बिट डेटा महत्वपूर्ण हो, वहां नुकसानरहित संपीड़न की अनुमति देता है कि मूल डेटा को संपीडित डेटा से सही रूप से पुनर्निर्माण किया जा सके, जैसे कि पाठ या डेटाबेस फ़ाइलें। आम उदाहरण में ZIP और RAR फ़ाइल फ़ॉर्मेट्स शामिल हैं। दूसरी ओर, नुकसानदायक संपीड़न अधिक महत्वपूर्ण डेटा को हटाकर फ़ाइल आकार को अधिक गहराई से कम करता है, जो अक्सर ऑडियो, वीडियो, और चित्र फ़ाइलों में इस्तेमाल होता है। JPEGs और MP3s उन उदाहरणों में हैं जहां कुछ डेटा हानि सामग्री की अनुभूति गुणवत्ता को महत्वपूर्ण रूप से घटा नहीं सकती है।
फ़ाइल संपीड़न कई तरीकों से लाभकारी होता है। यह उपकरणों और सर्वरों पर संग्रहण स्थान की बचत करता है, लागत को कम करता है और कुशलता को बढ़ाता है। यह नेटवर्कों, इंटरनेट सहित, पर फ़ाइल स्थानांतरण समय को तेज करता है, जो विशेष रूप से बड़ी फ़ाइलों के लिए महत्वपूर्ण है। साथ ही, संपीड़ित फ़ाइलें एक आर्काइव फ़ाइल में एकत्र की जा सकती हैं, जो संगठनात्मक और आसानी से परिवहन के लिए सहायता देता है।
हालांकि, फ़ाइल संपीड़न में कुछ नकारात्मक पहलू भी होते हैं। संपीड़न और विस्तारण प्रक्रिया के लिए संगणकीय संसाधनों की आवश्यकता होती है, जो विशेष रूप से बड़ी फ़ाइलों के लिए सिस्टम की प्रदर्शन को धीमा कर सकता है। साथ ही, नुकसानदायक संपीड़न के मामले में, कुछ मूल डेटा संपीड़न के दौरान खो जाता है, और परिणामस्वरूप गुणवत्ता सभी उपयोगों के लिए स्वीकार्य नहीं हो सकती है, विशेषकर उन पेशेवर अनुप्रयोगों के लिए जो उच्च गुणवत्ता मांगते हैं।
फ़ाइल संपीड़न आज की डिजिटल दुनिया में एक महत्वपूर्ण उपकरण है। इसने कुशलता में सुधार किया, संग्रहण स्थान की बचत की और डाउनलोड और अपलोड समयों को घटाया। फिर भी, यह स्वयं की सिस्टम प्रदर्शन और गुणवत्ता हानि की जोखिम लाता है। इसलिए, विशेष डेटा आवश्यकताओं के लिए सही संपीड़न तकनीक को चुनने के लिए इन कारकों का ध्यान रखना आवश्यक है।
फ़ाइल संकुचन एक प्रक्रिया है जो फ़ाइल या फ़ाइलों का आकार घटाती है, आमतौर पर संग्रहण स्थान को बचाने या नेटवर्क पर संचार को तेज करने के लिए।
फ़ाइल संकुचन डाटा में रिडंडेंसी की पहचान और हटाने के द्वारा काम करता है। यह एल्गोरिदम का उपयोग करके मूल डेटा को एक छोटे स्थान में कोड करता है।
फ़ाइल संकुचन के दो मुख्य प्रकार हैं - नुकसान रहित और नुकसानदायक संकुचन। नुकसान रहित संकुचन की अनुमति है कि मूल फ़ाइल को पूरी तरह से बहाल किया जा सके, जबकि नुकसानदायक संकुचन डेटा की गुणवत्ता में कुछ हानि की लागत पर अधिक आकार घटाव की अनुमति देता है।
फाइल संकुचन उपकरण का एक लोकप् रिय उदाहरण WinZip है, जो ZIP और RAR सहित कई संकुचन प्रारूपों का समर्थन करता है।
नुकसान रहित संकुचन के साथ, गुणवत्ता अपरिवर्तित रहती है। हालांकि, नुकसानदायक संकुचन के साथ, फ़ाइल का आकार अधिक ध्यान से घटाने के लिए कुछ कम महत्वपूर्ण डेटा को हटाने के कारण गुणवत्ता में ध्यान देने योग्य कमी हो सकती है।
हां, डेटा संरक्षण के संबंध में फ़ाइल संकुचन सुरक्षित है, खासकर नुकसान रहित संकुचन के साथ। हालांकि, किसी भी फ़ाइल की तरह, संकुचित फ़ाइलों को मैलवेयर या वायरस के लक्ष्य के रूप में लिया जा सकता है, इसलिए यह हमेशा महत्त्वपूर्ण होता है कि प्रमुख सुरक्षा सॉफ़्टवेयर स्थापित हो।
लगभग सभी प्रकार की फ़ाइलें संकुचित की जा सकती हैं, जिसमें पाठ फ़ाइलें, चित्र, ऑडियो, वीडियो, और सॉफ़्टवेयर फ़ाइलें शामिल हैं। हालांकि, प्राप्त करने योग्य संकुचन का स्तर फ़ाइल प्रकारों के बीच महत्वपूर्ण रूप से अलग हो सकता है।
ZIP फ़ाइल एक प्रकार की फ़ाइल प्रारूप है जो नुकसान रहित संकुचन का उपयोग करके एक या अधिक फ़ाइलों के आकार को घटाती है। ZIP फ़ाइल में अनेक फ़ाइलें प्रभावी रूप से एक ही फ़ाइल में संग्रहित की जाती हैं, जो साझा करना भी आसान बनाती है।
तकनीकी रूप से, हां, हालांकि अतिरिक्त आकार घटाव न्यूनतम हो सकता है या यहां तक कि प्रतिकूल हो सकता है। पहले से संकुचित फ़ाइल को संकुचित करना कभी-कभी इसका आकार बढ़ सकता है क्य ोंकि संकुचन एल्गोरिदम द्वारा जोड़ी गई मेटाडाटा।
फ़ाइल को डिकम्प्रेस करने के लिए, आपको आमतौर पर एक डिकम्प्रेसन या अनज़िपिंग उपकरण की आवश्यकता होती है, जैसे WinZip या 7-Zip। ये उपकरण संपीडित प्रारूप से मूल फ़ाइलों को निकाल सकते हैं।