आप जैसे पाठक MUO का समर्थन करने में मदद करते हैं। जब आप हमारी साइट पर लिंक का उपयोग करके खरीदारी करते हैं, तो हम संबद्ध कमीशन अर्जित कर सकते हैं।
फ़ाइलों के साथ काम करना प्रोग्राम द्वारा किए जाने वाले सबसे सामान्य कार्यों में से एक है, इसलिए नोड के सहायक पुस्तकालय के साथ समय और प्रयास बचाएं।
Node.js की अंतर्निहित विशेषताओं में से एक fs मॉड्यूल का उपयोग करके ऑपरेटिंग सिस्टम की फाइल सिस्टम में हेरफेर है। इस Node.js मॉड्यूल में फाइलों और निर्देशिकाओं के साथ काम करने के लिए कई उपयोगी कार्य हैं।
फ़ाइलों को केवल निरंतर वस्तुओं या डेटा के टुकड़ों के रूप में संदर्भित किया जाता है जो आमतौर पर डिस्क या मेमोरी के रूप में जाने वाले हार्ड माध्यम पर संग्रहीत होते हैं। फ़ाइलें विभिन्न प्रकार की हो सकती हैं, पाठ फ़ाइलों से लेकर छवि फ़ाइलों, ऑडियो फ़ाइलों और कई अन्य।
तो, एक फाइल सिस्टम क्या है, और आप Node.js में ऑपरेटिंग सिस्टम के फाइल सिस्टम के साथ आसानी से कैसे इंटरैक्ट कर सकते हैं?
एक फाइल सिस्टम क्या है?
एक फाइल सिस्टम परिभाषित करता है कि एक ऑपरेटिंग सिस्टम अन्य कार्यों के साथ-साथ फाइलों की पहचान, व्यवस्थित, स्टोर और एक्सेस कैसे कर सकता है।
एक ऑपरेटिंग सिस्टम का फाइल सिस्टम फाइलों को निर्देशिकाओं या फ़ोल्डरों के रूप में ज्ञात संग्रह में समूहीकृत करने का काम भी करता है। साधारण फाइलें और निर्देशिकाएं फाइल सिस्टम के सबसे आम हिस्से हैं जो अक्सर कई अन्य लोगों के साथ इंटरैक्ट करते हैं।
फाइल सिस्टम के कुछ उदाहरणों में न्यू टेक्नोलॉजी फाइल सिस्टम (NTFS), UNIX फाइल सिस्टम (UFS) और पदानुक्रमित फाइल सिस्टम (HFS) शामिल हैं।
Node.js fs मॉड्यूल क्या है?
नोड.जे.एस fs मॉड्यूल एक अंतर्निहित लाइब्रेरी है जो Node.js द्वारा किसी भी ऑपरेटिंग सिस्टम के फ़ाइल सिस्टम के साथ काम करने के लिए प्रदान की जाती है जो Node.js का समर्थन करता है। fs मॉड्यूल आसानी से सुलभ है और फ़ाइल संचालन के लिए गो-टू लाइब्रेरी है फाइलों से पढ़ना या Node.js में फ़ाइलों को डेटा लिखना.
के साथ इसका बहुत प्रयोग किया जाता है पथ और ओएस फ़ाइलों पर विभिन्न संचालन करने के लिए मॉड्यूल। उपयोग करने के लिए fs आपके प्रोग्राम में मॉड्यूल, आप इसे अपने स्रोत कोड में आयात कर सकते हैं जैसा कि नीचे दिए गए कोड में दिखाया गया है।
// कॉमनजेएस
कॉन्स्ट एफएस = ज़रूरत होना('एफएस')
// ES6
आयात fs से 'एफएस'
Node.js पथ मॉड्यूल क्या है?
आप Node.js का उपयोग कर सकते हैं पथ मॉड्यूल फ़ाइल पथ में हेरफेर करने के लिए। इसमें फ़ाइल और निर्देशिका पथों के साथ आसानी से इंटरैक्ट करने के लिए उपयोगिताएँ शामिल हैं। का उपयोग fs और पथ एक कार्य को पूरा करने के लिए मिलकर मॉड्यूल मानक अभ्यास है। ऐसा इसलिए है क्योंकि अधिकांश fs मॉड्यूल फ़ंक्शंस कार्य करने के लिए फ़ाइलों या निर्देशिकाओं को लक्षित करने के लिए पथों पर निर्भर करते हैं।
आप आयात कर सकते हैं पथ नीचे दिए गए सिंटैक्स के साथ अपने कोड में मॉड्यूल:
// कॉमनजेएस
कॉन्स्ट पथ = ज़रूरत होना('पथ')
// ES6
आयात पथ से 'पथ'
Node.js में फ़ाइल सिस्टम तक पहुँचने के लिए सामान्य कार्य
यहाँ सबसे अधिक उपयोग किए जाने वाले Node.js हैं fs और पथ मॉड्यूल फ़ंक्शंस, और फ़ाइलों और निर्देशिकाओं के साथ इंटरैक्ट करने के लिए उनका उपयोग कैसे करें।
रास्तों के साथ काम करना
-
पथ.संकल्प: पैरामीटर के रूप में पारित पथ निर्देशों की सूची से पथ को हल करने के लिए यह कार्य है। उदाहरण के लिए:
path.resolve ('घर', 'परियोजनाएं', 'वेब');
// रिटर्न/home/projects/web path.resolve ('घर/परियोजनाओं/वेब', '../मोबाइल');
// रिटर्न/home/projects/mobile -
पथ सामान्य करें: सामान्य फ़ंक्शन किसी दिए गए इनपुट पथ से सही और सामान्यीकृत पथ लौटाता है। उदाहरण के लिए:
path. normalize ('घर/परियोजनाओं/वेब/../मोबाइल/./कोड');
// होम/प्रोजेक्ट्स/मोबाइल/कोड लौटाता है -
पथ.जॉइन: यह फ़ंक्शन कई सेगमेंट से पथ बनाता है। उदाहरण के लिए:
पथ.जॉइन ('होम', 'प्रोजेक्ट्स', '../', 'मूवीज');
// घर/फिल्में लौटती हैं -
पथ.बेसनाम: बेसनाम समारोह अंतिम पथ खंड देता है। आप इसे दो तरह से इस्तेमाल कर सकते हैं:
path.basename ('घर/परियोजनाओं/वेब/index.js');
// रिटर्न index.jsपथ.बेसनाम ('होम/प्रोजेक्ट्स/वेब/इंडेक्स.जेएस', '.जेएस');
// एक्सटेंशन को हटाता है और 'इंडेक्स' लौटाता है -
पथ .dirname: यह फ़ंक्शन किसी दिए गए पथ की अंतिम निर्देशिका का पथ लौटाता है। उदाहरण:
path.dirname ('घर/परियोजनाओं/वेब/index.js');
// रिटर्न होम/प्रोजेक्ट्स/वेब -
पथ.extname: इस फ़ंक्शन के साथ, आप किसी दिए गए पथ से फ़ाइल का विस्तार प्राप्त कर सकते हैं।
path.extname ('घर/परियोजनाओं/वेब/index.js');
// रिटर्न '.js'
फ़ाइलें खोलना और बंद करना
-
fs.open: यह Node.js में समकालिक रूप से फ़ाइल खोलने या बनाने का कार्य है। का तुल्यकालिक रूप fs.open है fs.ओपनसिंक. fs.ओपन एचार तर्कों को स्वीकार करता है जो फ़ाइल पथ, फ़्लैग, ओपन मोड और एक कॉलबैक फ़ंक्शन हैं। झंडे और खुलातरीका एक डिफ़ॉल्ट मान है, और आप उनके बारे में अधिक जान सकते हैं Node.js fs.open प्रलेखन।
कॉन्स्ट फ़ाइलपथ = पथ.जॉइन (__dirname, '/videos/newVideo.mp4');
// __dirname वर्तमान कार्यशील निर्देशिका का पथ लौटाता है।
// फाइलपाथ =/videos/newVideo.mp4 fs.open (फ़ाइलपाथ, (त्रुटि, फ़ाइलडिस्क्रिप्टर) => {
// त्रुटियों को संभालें
सांत्वना देना.लॉग (फाइलडिस्क्रिप्टर); // फ़ाइल डिस्क्रिप्टर का प्रतिनिधित्व करने वाला एक पूर्णांक प्रिंट करता है
}) -
fs.बंद करें: किसी भी खुली फाइल को हमेशा बंद करना अच्छा अभ्यास है जब उनकी जरूरत नहीं रह जाती है। Node.js के पास है fs.बंद इसके लिए कार्य करें:
fs.open (फ़ाइलपाथ, (त्रुटि, फ़ाइलडिस्क्रिप्टर) => {
// त्रुटियों को संभालें, जैसे 'फ़ाइल/निर्देशिका मौजूद नहीं है'
सांत्वना देना.लॉग (फाइलडिस्क्रिप्टर);// फ़ाइल बंद करें
fs.close (fileDescriptor, (त्रुटि) => {
// त्रुटियों को संभालें
सांत्वना देनालॉग ('फ़ाइल सफलतापूर्वक बंद');
});
})
बनाना और हटाना
-
fs.mkdir: यह की तरह ही काम करता है mkdir टर्मिनल कमांड जो एक नई निर्देशिका बनाता है। यह पैरामीटर के रूप में पथ, मोड (वैकल्पिक), और कॉलबैक फ़ंक्शन लेता है। आप इसे इस तरह इस्तेमाल कर सकते हैं:
कॉन्स्ट dirPath = path.join (__dirname, 'newDirectory');
fs.mkdir (dirPath, (त्रुटि) => {
// त्रुटियों को संभालें
सांत्वना देनालॉग ('नई निर्देशिका सफलतापूर्वक बनाई गई');
}); -
fs.अनलिंक: यह फ़ंक्शन तर्क के रूप में पारित पथ पर फ़ाइल को हटा देता है या हटा देता है। नीचे दिए गए कोड उदाहरण पर विचार करें:
कॉन्स्ट फ़ाइलपाथ = पथ.जॉइन (_dirname, 'oldFile.js');
fs.unlink (फ़ाइलपथ, (त्रुटि) => {
// त्रुटियों को संभालें
सांत्वना देनालॉग ('फ़ाइल सफलतापूर्वक हटा दी गई है');
}); -
fs.rmdir: यह विधि किसी दिए गए पथ पर निर्देशिका को हटा देती है। यह अनलिंक विधि के उपयोग में बहुत समान है:
कॉन्स्ट dirPath = path.resolve ('होम', 'प्रोजेक्ट्स', 'वेब');
fs.rmdir (dirPath, (त्रुटि) => {
// त्रुटियों को संभालें
सांत्वना देनालॉग ('निर्देशिका सफलतापूर्वक हटा दी गई');
})
-
fs.मौजूद है: मौजूद विधि जांचती है कि किसी दिए गए पथ पर फ़ाइल मौजूद है या नहीं। कार्यान्वयन इस प्रकार है:
होने देना फ़ाइलपथ = पथ.जॉइन (__dirname, 'index.html');
fs.exists (फ़ाइलपथ, (मौजूद है) => {
सांत्वना देनालॉग (मौजूद है) // सही या गलत
}) -
fs.stat: यह एक तुल्यकालिक कार्य है जो फ़ाइल के गुणों को लौटाता है। यह एक देता है fs। आँकड़े ऑब्जेक्ट जो फ़ाइल के गुणों तक पहुँचने के लिए कुछ विधियों को उजागर करता है। यहाँ एक उदाहरण है:
fs.stat ('index.js', (त्रुटि, आँकड़े) => {
सांत्वना देनालॉग (आँकड़े); // फ़ाइल के निम्न स्तर के गुणों को प्रिंट करता है
आँकड़े.isFile (); // सच लौटाता है
stats.isDirectory (); // झूठा लौटाता है
})
आपको उपयोग करना चाहिए पथ फ़ाइल पथ के साथ काम करते समय विधियाँ, क्योंकि वे आपको प्लेटफ़ॉर्म पर अनपेक्षित व्यवहार से बचाती हैं। नोड.जेएस एफएस और Node.js पथ प्रलेखन विधियों की एक विस्तृत सूची का वर्णन करता है।
Node.js में फ़ाइल सिस्टम में हेरफेर करना
की विशालता fs मॉड्यूल किसी भी ऑपरेटिंग सिस्टम पर फाइलों तक पहुंचना और उनके साथ इंटरैक्ट करना बहुत आसान बनाता है। जब आप इसे एक साथ उपयोग करते हैं पथ मॉड्यूल, आप अधिक कार्यक्षमता के लिए खुले हैं और फ़ाइल सिस्टम में हेरफेर कर सकते हैं जैसा आप चाहते हैं।
Node.js का एक प्रमुख लाभ इसकी सुवाह्यता है। आप अपने ऐप्स को किसी भी प्लेटफॉर्म पर विकसित कर सकते हैं और बुनियादी संगतता मुद्दों के बारे में चिंता किए बिना उन्हें कहीं भी तैनात कर सकते हैं।