ऑनवर्क्स लिनक्स और विंडोज ऑनलाइन वर्कस्टेशन

प्रतीक चिन्ह

वर्कस्टेशन के लिए मुफ्त होस्टिंग ऑनलाइन

<पिछला | विषय-सूची | अगला>

शैल कार्य

हमारी स्क्रिप्ट वर्तमान में HTML दस्तावेज़ उत्पन्न करने के लिए निम्नलिखित चरण निष्पादित करती है:

1. पेज खोलें.

2. पेज हेडर खोलें.

3. पृष्ठ शीर्षक सेट करें.

4. पेज हेडर बंद करें.

5. पृष्ठ का मुख्य भाग खोलें.

6. आउटपुट पेज हेडिंग.

7. आउटपुट टाइमस्टैम्प।

8. पृष्ठ का मुख्य भाग बंद करें।

9. पेज बंद करें.

विकास के अपने अगले चरण के लिए, हम चरण 7 और 8 के बीच कुछ कार्य जोड़ेंगे। इनमें शामिल होंगे:

● सिस्टम अपटाइम और लोड। यह अंतिम शटडाउन या री-बूट के बाद से समय की मात्रा और कई समय अंतराल पर प्रोसेसर पर वर्तमान में चल रहे कार्यों की औसत संख्या है।

● डिस्क स्थान. सिस्टम के भंडारण उपकरणों पर स्थान का समग्र उपयोग।

● गृह स्थान. प्रत्येक उपयोगकर्ता द्वारा उपयोग की जा रही संग्रहण स्थान की मात्रा.


यदि हमारे पास इनमें से प्रत्येक कार्य के लिए एक कमांड है, तो हम उन्हें केवल कमांड प्रतिस्थापन के माध्यम से अपनी स्क्रिप्ट में जोड़ सकते हैं:



#! / Bin / bash


# सिस्टम सूचना पृष्ठ को आउटपुट करने का प्रोग्राम


शीर्षक='$HOSTNAME के ​​लिए सिस्टम सूचना रिपोर्ट' CURRENT_TIME=$(दिनांक +'%x %r %Z')

TIMESTAMP='$USER द्वारा $CURRENT_TIME जेनरेट किया गया'


बिल्ली << _EOF_

#! / Bin / bash


# सिस्टम सूचना पृष्ठ को आउटपुट करने का प्रोग्राम


शीर्षक='$HOSTNAME के ​​लिए सिस्टम सूचना रिपोर्ट' CURRENT_TIME=$(दिनांक +'%x %r %Z')

TIMESTAMP='$USER द्वारा $CURRENT_TIME जेनरेट किया गया'


बिल्ली << _EOF_


$शीर्षक

$शीर्षक

$टाइमस्टैम्प

$(रिपोर्ट_अपटाइम)

$(रिपोर्ट_डिस्क_स्पेस)

$(रिपोर्ट_होम_स्पेस)

_ईओएफ_

$शीर्षक

$शीर्षक

$टाइमस्टैम्प

$(रिपोर्ट_अपटाइम)

$(रिपोर्ट_डिस्क_स्पेस)

$(रिपोर्ट_होम_स्पेस)

_ईओएफ_


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

समारोह नाम {

आज्ञाओं

वापसी

}

और सरल (और आम तौर पर पसंदीदा) रूप:

नाम () {

आज्ञाओं

वापसी

}

की छवि

#! / Bin / bash

#! / Bin / bash

# शैल फ़ंक्शन डेमो


फ़ंक्शन चरण 2 { इको "चरण 2" वापसी

}

# मुख्य कार्यक्रम यहां शुरू होता है प्रतिध्वनि "चरण 1"

# शैल फ़ंक्शन डेमो


फ़ंक्शन चरण 2 { इको "चरण 2" वापसी

}

# मुख्य कार्यक्रम यहां शुरू होता है प्रतिध्वनि "चरण 1"

जहां नाम फ़ंक्शन का नाम है और आज्ञाओं फ़ंक्शन के भीतर निहित आदेशों की एक श्रृंखला है। दोनों रूप समतुल्य हैं और इनका परस्पर उपयोग किया जा सकता है। नीचे हम एक स्क्रिप्ट देखते हैं जो शेल फ़ंक्शन के उपयोग को प्रदर्शित करती है:


1

2

3

4

5

6

7

8

9

10

11

12

1

2

3

4

5

6

7

8

9

10

11

12

शैल कार्य


13 चरण2

14 प्रतिध्वनि "चरण 3"

13 चरण2

14 प्रतिध्वनि "चरण 3"


जैसे ही शेल स्क्रिप्ट को पढ़ता है, यह 1 से 11 तक की पंक्तियों से होकर गुजरता है, क्योंकि उन पंक्तियों में टिप्पणियाँ और फ़ंक्शन परिभाषा शामिल होती है। निष्पादन पंक्ति 12 पर शुरू होता है, एक के साथ गूंज आज्ञा। पंक्ति 13 कॉल शेल फ़ंक्शन step2 और शेल फ़ंक्शन को वैसे ही निष्पादित करता है जैसे वह किसी अन्य कमांड को करता है। प्रोग्राम नियंत्रण फिर पंक्ति 6 ​​और दूसरी पर चला जाता है गूंज आदेश निष्पादित किया जाता है. पंक्ति 7 को आगे निष्पादित किया गया है। इसका वापसी कमांड फ़ंक्शन को समाप्त करता है और फ़ंक्शन कॉल (लाइन 14) के बाद वाली लाइन पर प्रोग्राम पर नियंत्रण लौटाता है, और अंतिम गूंज आदेश निष्पादित किया जाता है. ध्यान दें कि फ़ंक्शन कॉल को शेल फ़ंक्शंस के रूप में पहचाना जाना चाहिए और बाहरी प्रोग्रामों के नाम के रूप में व्याख्या नहीं की जानी चाहिए, शेल फ़ंक्शन परिभाषाओं को कॉल करने से पहले स्क्रिप्ट में दिखाई देनी चाहिए।

हम अपनी स्क्रिप्ट में न्यूनतम शेल फ़ंक्शन परिभाषाएँ जोड़ेंगे:



#! / Bin / bash


# सिस्टम सूचना पृष्ठ को आउटपुट करने का प्रोग्राम


शीर्षक='$HOSTNAME के ​​लिए सिस्टम सूचना रिपोर्ट' CURRENT_TIME=$(दिनांक +'%x %r %Z')

TIMESTAMP='$USER द्वारा $CURRENT_TIME जेनरेट किया गया'


रिपोर्ट_अपटाइम () {वापसी

}


रिपोर्ट_डिस्क_स्पेस () {वापसी

}


रिपोर्ट_होम_स्पेस () {वापसी

}


बिल्ली << _EOF_

$शीर्षक

$शीर्षक

$टाइमस्टैम्प

$(रिपोर्ट_अपटाइम)

$(रिपोर्ट_डिस्क_स्पेस)

$(रिपोर्ट_होम_स्पेस)

#! / Bin / bash


# सिस्टम सूचना पृष्ठ को आउटपुट करने का प्रोग्राम


शीर्षक='$HOSTNAME के ​​लिए सिस्टम सूचना रिपोर्ट' CURRENT_TIME=$(दिनांक +'%x %r %Z')

TIMESTAMP='$USER द्वारा $CURRENT_TIME जेनरेट किया गया'


रिपोर्ट_अपटाइम () {वापसी

}


रिपोर्ट_डिस्क_स्पेस () {वापसी

}


रिपोर्ट_होम_स्पेस () {वापसी

}


बिल्ली << _EOF_

$शीर्षक

$शीर्षक

$टाइमस्टैम्प

$(रिपोर्ट_अपटाइम)

$(रिपोर्ट_डिस्क_स्पेस)

$(रिपोर्ट_होम_स्पेस)


_ईओएफ_

_ईओएफ_


शेल फ़ंक्शन नाम वेरिएबल के समान नियमों का पालन करते हैं। किसी फ़ंक्शन में कम से कम एक कमांड अवश्य होनी चाहिए. वापसी कमांड (जो वैकल्पिक है) आवश्यकता को पूरा करता है।


OnWorks पर शीर्ष OS क्लाउड कंप्यूटिंग: