पायथन का OS मॉड्यूल क्या है और आप इसका उपयोग कैसे करते हैं?

पायथन का OS मॉड्यूल क्या है और आप इसका उपयोग कैसे करते हैं?

पायथन में ओएस मॉड्यूल फाइल सिस्टम, प्रक्रियाओं, शेड्यूलर आदि से निपटने के लिए सिस्टम-विशिष्ट कार्यों तक पहुंच प्रदान करता है। आपको वास्तविक दुनिया की समस्याओं से निपटने वाले एप्लिकेशन लिखने के लिए पायथन ओएस सिस्टम में महारत हासिल करने की आवश्यकता है। यह मार्गदर्शिका कुछ मुख्य अवधारणाओं पर चर्चा करती है और यह बताती है कि पायथन सिस्टम कमांड का उपयोग कैसे करें।





पायथन ओएस सिस्टम की विशेषताएं

ओएस सिस्टम अंतर्निहित ऑपरेटिंग सिस्टम के साथ बातचीत करने के पोर्टेबल तरीके के रूप में कार्य करता है। यह अन्य कार्यात्मकताओं के साथ फ़ाइल नाम, कमांड लाइन तर्क, पर्यावरण चर, प्रक्रिया पैरामीटर और फाइल सिस्टम पदानुक्रम तक पहुंच प्रदान करता है।





इस मॉड्यूल में दो उप-मॉड्यूल, os.sys मॉड्यूल और os.path मॉड्यूल भी शामिल हैं। आप कई प्रकार के कार्यों को करने के लिए ओएस मॉड्यूल द्वारा प्रदान किए गए कार्यों का उपयोग कर सकते हैं। कुछ सामान्य उपयोग में शेल कमांड निष्पादित करना, फाइलों और निर्देशिकाओं को प्रबंधित करना, स्पॉनिंग प्रक्रियाएं आदि शामिल हैं।





OS मॉड्यूल के साथ शुरुआत करना

ओएस मॉड्यूल की खोज का सबसे आसान तरीका दुभाषिया के माध्यम से है। आप वहां मॉड्यूल आयात कर सकते हैं और स्रोत कोड लिखे बिना सिस्टम फ़ंक्शन का उपयोग कर सकते हैं। हालाँकि, इसके लिए आपको पायथन स्थापित करना होगा। तो आगे बढ़ो और अपने स्थानीय मशीन पर पायथन स्थापित करें।

सम्बंधित: उबंटू पर पायथन कैसे स्थापित करें



टाइप करके दुभाषिया प्रारंभ करें अजगर अपने टर्मिनल या कमांड शेल में। इसके खुलने के बाद, निम्न कथन का उपयोग करके OS मॉड्यूल आयात करें।

फोटो प्रिंट करवाने की सबसे सस्ती जगह
>>> import os

अब आप पायथन सहित ओएस मॉड्यूल द्वारा प्रदान की जाने वाली कार्यक्षमताओं तक पहुंच सकते हैं प्रणाली आदेश। उदाहरण के लिए, आप सिस्टम प्लेटफॉर्म का उपयोग करके निर्धारित कर सकते हैं नाम आदेश। नीचे दिया गया उदाहरण दिखाता है कि ओएस मॉड्यूल द्वारा उजागर किए गए सिस्टम कमांड को कैसे लागू किया जाए।





>>> os.name

यह फ़ंक्शन जाँचता है कि क्या कुछ OS विशिष्ट मॉड्यूल मौजूद हैं और उसके आधार पर प्लेटफ़ॉर्म निर्धारित करते हैं। उपयोग आपका नाम विस्तृत जानकारी प्राप्त करने के लिए कार्य करता है।

>>> os.uname()

यह कमांड मशीन आर्किटेक्चर, रिलीज और संस्करण की जानकारी के साथ सटीक सिस्टम प्लेटफॉर्म प्रदर्शित करता है। उपयोग गेटसीडब्ल्यूडी वर्तमान कार्यशील निर्देशिका को पुनः प्राप्त करने के लिए कार्य।





>>> os.getcwd()

आप पायथन सिस्टम कमांड का उपयोग करके आसानी से कार्यशील निर्देशिका को बदल सकते हैं छदिरो . नए स्थान को एक स्ट्रिंग पैरामीटर के रूप में पास करें।

>>> os.chdir('/tmp')

NS एमकेडीआईआर OS मॉड्यूल का कार्य नई निर्देशिकाओं को सीधा बनाता है। यह हमें पुनरावर्ती फ़ोल्डर बनाने की भी अनुमति देता है, जिसका अर्थ है कि पायथन उन सभी लापता निर्देशिकाओं का निर्माण करेगा जो लीफ निर्देशिका के माता-पिता हैं।

>>> os.mkdir('new-dir')

उपयोग आरएमडीआईआर अपनी कार्यशील निर्देशिका से निर्देशिकाओं को हटाने का आदेश।

>>> os.rmdir('new-dir')

पायथन सिस्टम कमांड के उदाहरण

OS मॉड्यूल द्वारा प्रदान किया गया सिस्टम कमांड प्रोग्रामर्स को शेल कमांड निष्पादित करने की अनुमति देता है। कमांड नाम को एक स्ट्रिंग के रूप में परिभाषित करना सुनिश्चित करें। एक बार जब आप अजगर को बुलाते हैं प्रणाली कमांड, यह दिए गए कमांड को एक नए सबशेल में चलाएगा।

>>> cmd = 'date'
>>> os.system(cmd)

आप इसी पद्धति का उपयोग करके अन्य स्टैंड-अलोन एप्लिकेशन चला सकते हैं। निम्नलिखित उदाहरण आपके पायथन शेल से टर्मिनल संपादक नैनो को निष्पादित करता है।

>>> cmd = 'nano'
>>> os.system(cmd)

पायथन ओएस सिस्टम निष्पादित होने वाले प्रत्येक कमांड के लिए रिटर्न कोड भी आउटपुट करता है। POSIX सिस्टम सफल निष्पादन के लिए 0 लौटाता है और समस्याओं को इंगित करने के लिए गैर-शून्य मान देता है।

आप जो कुछ भी चाहते हैं उसे चलाने के लिए आप पायथन में ओएस सिस्टम का उपयोग कर सकते हैं। उदाहरण के लिए, यदि आपके प्रोग्राम को उपयोगकर्ता मशीन पर किसी प्रोग्राम की संस्करण जानकारी पढ़ने की आवश्यकता है, तो आप निम्न की तरह कुछ कर सकते हैं।

>>> cmd = 'gcc --version'
>>> os.system(cmd)

नीचे दिया गया उदाहरण एक साधारण शेल कमांड निष्पादित करता है जो एक नई फ़ाइल बनाता है जिसे कहा जाता है users.txt और लॉग इन किए गए सभी उपयोगकर्ताओं के साथ इसे पॉप्युलेट करता है। बहुत सारे पायथन प्रोग्राम ये काम करते हैं।

>>> os.system('users > test')

हम ओएस सिस्टम को एक स्ट्रिंग के रूप में कमांड नाम पास कर रहे हैं। आप सभी प्रकार के का उपयोग कर सकते हैं उपयोगी टर्मिनल कमांड उसी तरह।

>>> os.system('ping -c 3 google.com')

आप भी उपयोग कर सकते हैं उपप्रक्रिया पायथन से सिस्टम कमांड निष्पादित करने के लिए कहता है। यह कई अतिरिक्त लाभ प्रदान करता है, जिसमें तेज रनटाइम, बेहतर त्रुटि प्रबंधन, आउटपुट पार्सिंग और पाइपिंग शेल कमांड शामिल हैं। पायथन का आधिकारिक दस्तावेज भी पुराने मॉड्यूल पर उपप्रोसेस कॉल की सिफारिश करता है जैसे ओएस सिस्टम तथा ओएस.स्पॉन .

>>> import subprocess
>>> subprocess.run(['ping','-c 3', 'example.com'])

ओएस मॉड्यूल के माध्यम से फाइलों और निर्देशिकाओं का प्रबंधन

हमने दिखाया है कि पायथन ओएस मॉड्यूल का उपयोग करके सरल फाइलें और निर्देशिका कैसे बनाई जाती है। क्या होगा यदि आप नेस्टेड फ़ोल्डर बनाना चाहते हैं? ओएस सिस्टम हम प्रोग्रामर के लिए भी इसका ख्याल रखता है। उदाहरण के लिए, नीचे दिए गए स्निपेट फ़ोल्डर बनाते हैं $होम/टेस्ट/रूट/एपीआई . यदि वे उपलब्ध नहीं हैं तो यह आवश्यक मूल निर्देशिका भी बनाएगा।

>>> dirname = os.path.join(os.environ['HOME'], 'test', 'root', 'api')
>>> print(dirname)
>>> os.makedirs(dirname)

सबसे पहले, हमने होम निर्देशिका का उपयोग करके पुनः प्राप्त किया के बारे में और फिर के माध्यम से फ़ोल्डर नामों में शामिल हो गए os.path.join . प्रिंट स्टेटमेंट फ़ोल्डर का नाम प्रदर्शित करता है, और मेकदिर्स इसे बनाता है।

हम का उपयोग करके नई निर्देशिका देख सकते हैं सूचीदिर ओएस मॉड्यूल की विधि।

>>> os.chdir(os.path.join(os.environ['HOME'], 'test', 'root', 'api'))
>>> os.system('touch file1 file2 file3')
>>> os.listdir(os.environ['HOME'])

आप का उपयोग करके आसानी से एपीआई निर्देशिका का नाम बदल सकते हैं नाम बदलने ओएस मॉड्यूल द्वारा दी जाने वाली कमांड। नीचे दिया गया कथन इस एपीआई निर्देशिका का नाम बदलकर परीक्षण-एपीआई कर देता है।

>>> os.rename('api', 'test-api')

उपयोग isfile तथा नाम ओएस का कार्य यदि आपके प्रोग्राम को विशिष्ट फाइलों या निर्देशिकाओं को मान्य करने की आवश्यकता है।

>>> os.path.isfile('file1')
>>> os.path.isdir('file1')

पायथन में ओएस मॉड्यूल डेवलपर्स को फ़ाइल एक्सटेंशन के साथ फ़ाइल और फ़ोल्डर नाम निकालने की अनुमति देता है। नीचे दिए गए स्निपेट्स के उपयोग को दर्शाते हैं ओएस.पथ.विभाजन तथा ओएस.पथ.स्प्लिटेक्स्ट इस संबंध में।

>>> dir = os.path.join(os.environ['HOME'], 'test', 'root', 'api', 'file1.txt')
>>> dirname, basename = os.path.split(dir)
>>> print(dirname)
>>> print(basename)

फ़ाइल नामों से .txt या .mp3 जैसे एक्सटेंशन निकालने के लिए नीचे दिए गए कोड का उपयोग करें।

>>> filename, extension = os.path.splitext(basename)
>>> print(filename)
>>> print(extension)

पायथन ओएस सिस्टम का विविध उपयोग

OS मॉड्यूल उपयोगकर्ता प्रक्रियाओं और कार्य अनुसूचक जैसी चीज़ों में हेर-फेर करने के लिए कई अतिरिक्त कार्य प्रदान करता है। उदाहरण के लिए, आप वर्तमान प्रक्रिया के यूआईडी (यूजर आईडी) का उपयोग करके जल्दी से प्राप्त कर सकते हैं देखा समारोह।

>>> os.getuid()
>>> os.getgid()

NS गेटगिड फ़ंक्शन चल रही प्रक्रिया की समूह आईडी देता है। उपयोग गेटपीड पीआईडी ​​(प्रक्रिया आईडी) प्राप्त करने के लिए और गेटपीड मूल प्रक्रिया आईडी प्राप्त करने के लिए।

>>> os.getpid()
>>> os.getppid()

आप अपने पायथन प्रोग्राम से फ़ाइलों और निर्देशिकाओं की अनुमतियों को बदलने के लिए ओएस मॉड्यूल का भी उपयोग कर सकते हैं। उपयोग चामोद ऐसा करने के लिए ओएस का कार्य।

>>> os.chmod('file1.txt', 0o444)

यह आदेश . की अनुमति को बदल देता है file1.txt प्रति 0444 . उपयोग 0o444 की बजाय 0444 यह सुनिश्चित करने के लिए कि कथन पायथन के दोनों प्रमुख संस्करणों में संगत है।

पायथन ओएस सिस्टम की शक्ति का उपयोग करें

पायथन का ओएस मॉड्यूल वह सब कुछ प्रदान करता है जो आपको अंतर्निहित ऑपरेटिंग सिस्टम के साथ बातचीत करने के लिए चाहिए। वास्तव में क्रॉस-प्लेटफ़ॉर्म प्रोग्राम लिखने के लिए OS सिस्टम की स्पष्ट समझ की आवश्यकता होती है। आरंभ करने में आपकी सहायता करने के लिए हमने इस मॉड्यूल द्वारा प्रदान की गई कुछ मुख्य कार्यात्मकताओं को शामिल किया है। उन्हें अपनी गति से आज़माएं, और उनके साथ छेड़छाड़ करना न भूलें।

साझा करना साझा करना कलरव ईमेल पायथन में टुपल्स कैसे बनाएं और उपयोग करें

अपने पायथन कोडिंग को अगले स्तर पर ले जाने के लिए तैयार हैं? यह समझने का समय है कि टुपल्स कैसे बनाएं और उनका उपयोग कैसे करें।

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • अजगर
लेखक के बारे में रुबैत हुसैन(39 लेख प्रकाशित)

रूबैत ओपन-सोर्स के लिए एक मजबूत जुनून के साथ एक सीएस ग्रेड है। यूनिक्स के अनुभवी होने के अलावा, वह नेटवर्क सुरक्षा, क्रिप्टोग्राफी और कार्यात्मक प्रोग्रामिंग में भी हैं। वह पुरानी किताबों का एक उत्साही संग्रहकर्ता है और क्लासिक रॉक के लिए कभी न खत्म होने वाली प्रशंसा है।

रूबैत हुसैन की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें