संपादित 2 दिन पहले द्वारा ExtremeHow संपादकीय टीम
शेल स्क्रिप्टिंगस्वचालनकमांड लाइनप्रोग्रामिंगस्क्रिप्टिंगसिस्टम एडमिनउपयोगिताएँशुरुआतीउत्पादकतासॉफ्टवेयर विकास
अनुवाद अपडेट किया गया 2 दिन पहले
बाश स्क्रिप्टिंग एक महत्वपूर्ण कौशल है जो किसी के लिए भी आवश्यक है जो लिनक्स का पूरी तरह से उपयोग करना चाहता है। चाहे सिस्टम कार्यों को स्वचालित करना हो, फाइलों को प्रबंधित करना हो, या जटिल कार्य संचालन को संभालना हो, बाश स्क्रिप्ट्स जीवन को आसान बनाती हैं। इस गाइड में, हम लिनक्स में बाश स्क्रिप्ट्स लिखने का पता लगाएंगे, जो नए उपयोगकर्ताओं और उन लोगों के लिए है जिन्हें एक पुनर्स्मरण की आवश्यकता है। यह बुनियादी पहलुओं की समझ के साथ-साथ प्रमुख अवधारणाओं को समझाने के लिए व्यावहारिक उदाहरण प्रदान करेगा।
बाश, या बौर्न अगेन शेल, एक कमांड प्रोसेसर है जो एक टेक्स्ट विंडो में चलता है जहां उपयोगकर्ता उन कमांड को दर्ज कर सकते हैं जिन्हें ऑपरेटिंग सिस्टम द्वारा निष्पादित किया जाएगा। बौर्न शेल के लिए एक मुफ्त सॉफ़्टवेयर प्रतिस्थापन के रूप में बनाया गया, बाश एक शक्तिशाली उपकरण है जो दुनिया की तकनीक को तेजी से प्रगति कराने के लिए कई अंतर्निहित कार्यों के साथ आता है।
बाश स्क्रिप्ट लिखने से पहले, यह सुनिश्चित करना महत्वपूर्ण है कि आपके पास एक लिनक्स-आधारित ऑपरेटिंग सिस्टम स्थापित है। लगभग सभी लिनक्स वितरण बाश के साथ पहले से इंस्टॉल आते हैं, क्योंकि यह अधिकांश यूनिक्स सिस्टम के लिए डिफ़ॉल्ट कमांड-लाइन इंटरप्रेटर है।
एक बाश स्क्रिप्ट सिर्फ एक टेक्स्ट फाइल होती है जिसमें कमांडों की एक श्रृंखला होती है। यह आमतौर पर आपके कंप्यूटर पर संचालन को स्वचालित करने के लिए उपयोग की जाती है और लिनक्स ऑपरेटिंग सिस्टम के साथ मिलकर काम करती है। बाश स्क्रिप्ट्स अत्यंत शक्तिशाली होती हैं, और वे जटिल बैच प्रसंस्करण कार्यों को स्वचालित करके समय बचा सकती हैं।
बाश स्क्रिप्ट्स लिखना शुरू करने के लिए इन सरल चरणों का पालन करें:
नई फाइल बनाकर शुरू करें। आप टच कमांड का उपयोग करके एक फाइल बना सकते हैं:
touch scriptname.sh
वैकल्पिक रूप से, आप इसे सीधे एक टेक्स्ट एडिटर जैसे नैनो में बना सकते हैं:
nano scriptname.sh
शिबैंग किसी भी बाश स्क्रिप्ट की पहली पंक्ति होती है। यह सिस्टम को बताती है कि शेष स्क्रिप्ट को पार्स करने के लिए किस इंटरप्रेटर का उपयोग करना है। बाश के लिए, यह आमतौर पर इस तरह दिखता है:
#!/bin/bash
शिबैंग लाइन के नीचे, आप अपना कोड लिखना शुरू करते हैं। चलिए एक बेसिक स्क्रिप्ट लिखते हैं जो टर्मिनल पर "Hello, World!" प्रिंट करता है।
#!/bin/bash
echo 'Hello, World!'
अगर आप नैनो का उपयोग कर रहे हैं, तो आप अपनी फाइल को CTRL + O
दबाकर सेव कर सकते हैं, और फिर CTRL + X
का उपयोग करके बाहर निकल सकते हैं।
जब तक आप अपनी स्क्रिप्ट को चलाने में सक्षम नहीं होते, यह एक्सीक्यूटेबल होनी चाहिए। इसके लिए, च्मोड का उपयोग करें:
chmod +x scriptname.sh
एक बार फाइल एक्सीक्यूटेबल हो जाए, आप इसे टाइप करके चला सकते हैं:
./scriptname.sh
बाश स्क्रिप्ट्स विभिन्न कमांड्स से बनी होती हैं। नीचे कुछ सामान्यतः उपयोग की जाने वाली बाश कमांड्स दी गई हैं:
वेरिएबल्स डेटा को संग्रहीत करते हैं जो बदल सकता है। अन्य प्रोग्रामिंग भाषाओं के विपरीत, बाश वेरिएबल्स को एक प्रकार की आवश्यकता नहीं होती है; कोई भी स्ट्रिंग या संख्या एक वेरिएबल में संग्रहीत की जा सकती है।
वेरिएबल्स को सेट करना आसान है:
variable_name='value'
वेरिएबल में संग्रहीत मूल्य को एक्सेस करने के लिए, वेरिएबल नाम के सामने डॉलर साइन $
रखें, जैसा दिखाया गया है:
echo $variable_name
टिप्पणियाँ आपकी स्क्रिप्ट में कोड का वर्णन या समझाने के लिए उपयोग की जाती हैं। यह आपके कोड को फिर से देखने पर या अन्य लोग इसे पढ़ने पर बहुत अधिक सहायक हो सकता है।
सिंगल-लाइन टिप्पणियाँ हैश #
सिंबल से शुरू होती हैं:
# यह एक सिंगल लाइन टिप्पणी है
शर्तीय अभिव्यक्तियों का उपयोग निर्णय लेने के लिए किया जाता है, और ये अभिव्यक्तियाँ संख्याओं, स्ट्रिंग्स की तुलना कर सकती हैं, या कमांड्स की स्थितियों को लौटा सकती हैं।
यदि-फिर बयानों के लिए बुनियादी शर्तीय सिंटैक्स इस प्रकार है:
if [ condition ]; then
# यदि शर्त सत्य है तो निष्पादित करने के लिए कमांड्स
else
# यदि शर्त असत्य है तो निष्पादित करने के लिए कमांड्स
fi
लूप्स कार्यों को दोहराने की क्षमता प्रदान करते हैं। सबसे सामान्य लूप फॉर लूप और वाइल लूप होते हैं।
फॉर लूप आइटमों की सूची पर इटरेट करता है और प्रत्येक आइटम के लिए कोड निष्पादित करता है:
for item in item1 item2 item3; do
echo $item
done
वाइल लूप तब तक चलता रहता है जब तक निर्दिष्ट शर्त असत्य न हो:
while [ condition ]; do
# निष्पादित करने के लिए कमांड्स
done
फंक्शंस आपको एक स्क्रिप्ट में कमांड्स को समूह में संग्रहित करने की अनुमति देते हैं जिन्हें आप बार-बार कॉल कर सकते हैं। यह आपकी स्क्रिप्ट को अधिक संगठित बनाने में मदद कर सकता है और रिपीटीशन को कम कर सकता है:
function_name() {
# निष्पादित करने के लिए कमांड्स
}
फंक्शन को उसके नाम से संदर्भित करके ही कॉल करें:
function_name
बाश स्क्रिप्ट्स कमांड लाइन से इनपुट पैरामीटर्स स्वीकार कर सकती हैं। ये पैरामीटर्स वेरिएबल्स $1
, $2
, $3
, आदि में संग्रहीत होते हैं, और $0
स्क्रिप्ट का नाम प्रस्तुत करता है:
echo "पहला तर्क है: $1"
बाश आपको अपनी स्क्रिप्ट्स के भीतर बाहरी सिस्टम कमांड्स का उपयोग करने की अनुमति देता है, जैसे:
result=$(ls -l)
echo "$result"
आइए एक सरल बाश स्क्रिप्ट बनाएं जो एक निर्देशिका का बैकअप ले:
#!/bin/bash
src="/path/to/source"
dest="/path/to/destination"
tar -czf backup-$(date +%Y-%m-%d).tar.gz -C "$src" .
mv backup-$(date +%Y-%m-%d).tar.gz "$dest"
यह स्क्रिप्ट स्रोत निर्देशिका की सामग्री को संपीड़ित करती है और आर्काइव को गंतव्य स्थान में ले जाती है।
जब चीजें योजना के अनुसार नहीं जाती हैं तो डिबगिंग महत्वपूर्ण होती है। बाश स्क्रिप्ट्स के लिए डिबगिंग विकल्प प्रदान करता है:
bash -x scriptname.sh
लिनक्स पर बाश स्क्रिप्ट्स लिखना एक शक्तिशाली कौशल है जो दैनिक कार्यों को स्वचालित करने, सिस्टम गतिविधियों का प्रबंधन करने और यहां तक कि जटिल प्रक्रियाओं को संभालने में मदद कर सकता है। चाहे आप अभी शुरुआत कर रहे हों या अपनी स्क्रिप्टिंग क्षमताओं को निखारने की कोशिश कर रहे हों, ऊपर दिए गए मार्गदर्शक एक मजबूत आरंभिक बिंदु प्रदान करती है। इन चरणों का पालन करके और सर्वोत्तम प्रथाओं का पालन करके, आप अपनी खुद की बाश स्क्रिप्ट्स लिखने में सक्षम हो सकते हैं और लिनक्स की पूरी रेंज की कार्यक्षमता का लाभ उठा सकते हैं। किसी भी कौशल की तरह, अभ्यास से आपकी क्षमता में सुधार होगा, और समय के साथ आप जटिल कार्यों को संभालने के लिए स्क्रिप्ट्स बनाने में सक्षम हो जाएंगे।
यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं