Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन इंटरफेस टू शेल पाइपलाइन्स

पायथन का उपयोग करके यूनिक्स कमांड पाइपलाइन मैकेनिज्म का उपयोग करने के लिए। कमांड पाइपलाइनिंग में एक सीक्वेंस एक फाइल से दूसरी फाइल में परिवर्तित होता है।

यह मॉड्यूल /bin/sh कमांड लाइन का उपयोग करता है। इसलिए हमें os.system() और os.popen() मेथड्स की आवश्यकता होती है।

इस मॉड्यूल का उपयोग करने के लिए, हमें इसे आयात करना चाहिए:

import pipes

pipes Template क्लास रखता है:

क्लास pipes.Template

यह क्लास मूल रूप से एक पाइपलाइन का अमूर्तीकरण है। इसके अलग-अलग मेथड्स हैं। ये इस प्रकार हैं।

मेथड Template.reset()

यह मेथड पाइपलाइन टेम्पलेट को उसकी प्रारंभिक स्थिति में पुनर्स्थापित करने के लिए उपयोग किया जाता है।

मेथड Template.clone()

यह मेथड एक और नया, और समान टेम्पलेट ऑब्जेक्ट बनाने के लिए उपयोग किया जाता है।

मेथड Template.debug(flag)

यह मेथड प्रक्रिया को डीबग करने के लिए उपयोग किया जाता है। जब फ्लैग ट्रू होता है, तो डीबगिंग मोड ऑन होता है। जब यह ऑन होता है, तो कमांड्स एक्जीक्यूशन के दौरान प्रिंट होंगे।

मेथड Template.append(command, kind)

यह मेथड अंत में एक नया टास्क डालने के लिए उपयोग किया जाता है। कमांड एक बॉर्न शेल कमांड होनी चाहिए। kind वेरिएबल में दो कैरेक्टर्स होते हैं।

पहले अक्षर के लिए, इसका मतलब है:

Sr.No.कैरेक्टर और विवरण
1

‘–‘

कमांड स्टैंडर्ड इनपुट पढ़ता है

2

‘f’

कमांड कमांड लाइन पर दी गई फाइल को पढ़ेगा

3

‘.’

कमांड कोई इनपुट नहीं पढ़ता। इसलिए यह पहली पोजीशन पर होगा।

दूसरे अक्षर के लिए, इसका मतलब है:

Sr.No.कैरेक्टर और विवरण
1

‘–‘

कमांड स्टैंडर्ड आउटपुट पर लिखता है

2

‘f’

कमांड कमांड लाइन पर एक फाइल लिखेगा

3

‘.’

कमांड कोई आउटपुट नहीं लिखता। इसलिए यह अंतिम पोजीशन पर होगा।

मेथड Template.prepend(command, kind)

यह मेथड शुरुआत में एक नया टास्क डालने के लिए उपयोग किया जाता है। कमांड एक बॉर्न शेल कमांड होनी चाहिए। यह append() मेथड के समान है।

मेथड Template.open(file, mode)

यह मेथड पढ़ने या लिखने के लिए एक फाइल खोलने के लिए उपयोग किया जाता है। लेकिन पढ़ने या लिखने के ऑपरेशन्स पाइपलाइन्स द्वारा किए जाते हैं।

मेथड Template.copy(infile, outfile)

यह मेथड पाइपलाइन द्वारा infile से outfile में कॉपी करने के लिए उपयोग किया जाता है।

उदाहरण कोड

import pipes

my_template = pipes.Template()
my_template.append('tr a-z A-Z', '--')
my_template.prepend('echo Python Programming', '--') # क्यू में आइटम प्रीपेंड करें
my_template.append('rev', '--')
my_template.debug(True)
my_file = my_template.open('test_file', 'w')
my_file.close()
content = open('test_file').read()
print(content)

आउटपुट

$ python3 example.py
echo Python Programming | tr a-z A-Z | rev >test_file
+ rev
+ tr a-z A-Z
+ echo Python Programming
GNIMMARGORP NOHTYP
  1. पायथन में Tkinter बटन के लिए कमांड मेथड बदलना पायथन में Tkinter बटन के लिए कमांड मेथड बदलना

    बटन विजेट का महत्व यह है कि इसका उपयोग एप्लिकेशन में कुछ ऑपरेशन करने के लिए इवेंट्स को संभालने के लिए किया जाता है। ऐसे इवेंट्स को संभालने के लिए, हम आमतौर पर एक विधि परिभाषित करते हैं जिसमें कुछ ऑपरेशन होते हैं। मान लीजिए हम बटन को इनिशियलाइज़ करने के बाद इवेंट मेथड को बदलना चाहते हैं। हम configu

  1. Python Tkinter में after विधि Python Tkinter में after विधि

    Tkinter GUI बनाने के लिए एक Python लाइब्रेरी है। इसमें GUI विंडोज और अन्य विजेट्स बनाने और हेरफेर करने के लिए कई अंतर्निहित विधियाँ हैं जो डेटा और GUI इवेंट्स दिखाते हैं। इस लेख में हम देखेंगे कि Tkinter GUI में after विधि का उपयोग कैसे किया जाता है। सिंटैक्स .after(delay, FuncName=FuncName) यह विध

  1. Python - Tkinter में geometry मेथड Python - Tkinter में geometry मेथड

    Python में Tkinter लाइब्रेरी का उपयोग करके GUI एप्लिकेशन बनाने की क्षमता है। लाइब्रेरी GUI एप्लिकेशन के लिए उपयोगी कई मेथड्स प्रदान करती है। geometry मेथड एक मौलिक है जो स्क्रीन लेआउट के आकार, स्थिति और कुछ अन्य विशेषताओं को तय करता है जिसे हम बनाने जा रहे हैं। उदाहरण - 1 नीचे दिए गए प्रोग्राम में