BASH/C2/Basics-of-Shell-Scripting/Hindi

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:01 'Basics of Shell Scripting' के स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:05 इस ट्यूटोरियल में हम निम्न के बारे में सीखेंगे
00:09 * 'सिस्टम वेरिएबल्स'
00:11 * 'यूज़र डिफाइंड वेरिएबल्स' और
00:13 * कीबोर्ड से यूज़र इनपुट स्वीकारना।
00:16 इस ट्यूटोरियल के अनुसरण के लिए आपको 'लिनक्स ऑपरेटिंग सिस्टम' के साथ परिचित होना चाहिए।
00:23 यदि नहीं, तो सम्बंधित ट्यूटोरियल्स के लिए कृपया दर्शायी वेबसाइट पर जाएँ।
00:29 इस ट्यूटोरियल के लिए मैं उपयोग कर रहा हूँ
00:32 * 'उबन्टु लिनक्स 12.04' ऑपरेटिंग सिस्टम और
00:35 * 'GNU बैश' वर्जन '4.1.10
00:40 ध्यान दें अभ्यास के लिए 'GNU बैश' वर्जन '4' या उससे अधिक की सलाह दी जाती है।
00:46 अब वेरिएबल्स के परिचय के साथ शुरू करते हैं।
00:49 * 'बैश वेरिएबल्स' जानकारी के लिए अस्थायी स्टोरेज प्रदान करता है।
00:55 * ये 'वेरिएबल्स' प्रोग्राम के जीवनकाल में प्रयोग किये जा सकते हैं।
01:01 वेरिएबल्स दो प्रकार के होते हैं 'सिस्टम वेरिएबल्स' 'यूज़र डिफाइंड वेरिएबल्स'
01:07 'सिस्टम वेरिएबल्स', ये स्वयं 'लिनक्स बैश शैल' के द्वारा बनाये और रखे जाते हैं।
01:14 ये कैपिटल लेटर्स यानि बड़े अक्षरों से परिभाषित होते हैं।
01:17 आमतौर पर उपयोग किये गए 'सिस्टम वेरिएबल्स' हैं
01:20 * 'BASH_VERSION' 'HOSTNAME'
01:23 * 'HOME' आदि
01:25 अब अपने कीबोर्ड पर एकसाथ 'Ctrl Alt और T' कीज़ दबाकर टर्मिनल खोलें।
01:33 अब टाइप करें 'set' और एंटर दबाएं।
01:38 यह सारे 'सिस्टम वेरिएबल्स' को दिखायेगा।
01:42 वैकल्पिक रूप से, सारे 'सिस्टम वेरिएबल्स' को देखने के लिए आप 'env' या 'printenv' टाइप कर सकते हैं।
01:53 अब मैं प्रॉम्प्ट को साफ़ करता हूँ।
01:55 अब, टाइप करें 'echo' स्पेस डबल कोट्स में 'डॉलर साइन' 'HOSTNAME'
02:01 और एंटर दबाएं।
02:04 सिस्टम का 'hostname' प्रदर्शित किया जायेगा।
02:07 अब हम 'होम' डिरेक्टरी के पूरे पाथ का पता लगाएंगे।
02:11 टाइप करें 'echo स्पेस डबल कोट्स में 'डॉलर साइन HOME' (बड़े अक्षरों में)
02:18 एंटर दबाएं।
02:21 यूज़र का 'होम' डिरेक्टरी का पूरा पाथ प्रदर्शित किया जायेगा।
02:26 अब, टाइप करें
02:27 'echo' स्पेस डबल कोट्स में 'HOME' (बड़े अक्षरों में)
02:32 एंटर दबाएं।
02:34 यह सिर्फ 'HOME' दिखायेगा 'HOME' वेरिएबल की वैल्यू नहीं दिखायेगा।
02:39 अतः वेरिएबल की वैल्यू दिखाने के लिए प्रत्येक वेरिएबल के शुरुआत में 'डॉलर साइन ( '$')' प्रयोग करना ज़रूरी होता है।
02:48 अब स्लाइड्स पर वापस आते हैं।
02:51 'यूज़र डिफाइंड वेरिएबल्स'
02:53 * ये 'वेरिएबल्स' यूज़र के द्वारा बनाये और संभाले जाते हैं।
02:57 * 'यूज़र डिफाइंड वेरिएबल्स' के नामों के लिए 'अपरकेस' यानि 'बड़े अक्षरों' से बचना हमेशा अच्छा विचार है।
03:05 * यह 'यूज़र डिफाइंड' और 'सिस्टम वेरिएबल्स' के बीच में अंतर करने को आसान बनाता है।
03:12 अपने टर्मिनल पर वापस आते हैं।
03:14 टाइप करें 'username (यूज़रनेम) इक्वल्स टू साइन sunita'
03:20 ध्यान दें कि 'username' 'इक्वल्स टू साइन' और 'sunita' के बीच कोई भी खाली स्थान नहीं होना चाहिए।
03:29 अब एंटर दबाएं।
03:30 'यूज़रनेम' वेरिएबल की वैल्यू दिखाने के लिए
03:33 टाइप करें 'echo' स्पेस डबल कोट्स में 'डॉलर साइन username (यूज़रनेम)'
03:40 एंटर दबाएं।
03:42 यह आपके 'टर्मिनल' पर 'sunita' दिखायेगा।
03:46 वेरिएबल की वैल्यू अनसेट की जा सकती है।
03:50 अपने टर्मिनल पर वापस आते हैं।
03:52 'अनसेट', 'unset' कमांड प्रयोग करके वेरिएबल की वैल्यू अनसेट की जा सकती है।
03:59 इसके लिए रचनाक्रम 'unset variablename' है।
04:03 अब पिछला उदाहरण प्रयोग करते हैं जहाँ हमारा वेरिएबल 'username' है।
04:08 'टर्मिनल' पर जाते हैं। अब टाइप करें 'unset space username', एंटर दबाएं।
04:18 अब जाँचते हैं, टाइप करें 'echo' स्पेस डबल कोट्स में 'डॉलर साइन username' एंटर दबाएं।
04:28 'टर्मिनल' पर कुछ भी प्रदर्शित नहीं किया जायेगा।
04:30 इसका मतलब है कि 'वेरिएबल यूज़रनेम' की वैल्यू हटायी जा चुकी है।
04:36 अब अपनी स्लाइड्स पर वापस आते हैं।
04:39 'ग्लोबल' और 'लोकल वेरिएबल्स'
04:42 * 'shell script' में, यूज़र डिफाइंड वेरिएबल्स 'ग्लोबली' या 'लोकली' घोषित किये जा सकते हैं।
04:49 * डिफ़ॉल्ट रूप से, सारे वेरिएबल्स 'ग्लोबल' हैं।
04:52 * इसका मतलब, 'फंक्शन' के बाहर और अंदर उनकी वैल्यूज़ समान बानी रहती हैं।
04:59 अब सीखते हैं कि 'वेरिएबल्स' को 'ग्लोबली' और 'लोकली' कैसे घोषित करते हैं।
05:04 'टर्मिनल' खोलें और टाइप करें।
05:07 'gedit' स्पेस g_(अंडरस्कोर) वेरिएबल.sh स्पेस &' (ampersand sign)
05:16 'gedit' टेक्स्ट एडिटर है 'g_(अंडरस्कोर)' 'वेरिएबल.sh' हमारी फाइल का नाम है।
05:23 और & (ampersand) प्रॉम्प्ट को खाली करने में प्रयोग होता है।
05:28 एंटर दबाएं।
05:30 यहाँ अपने 'g_(अंडरस्कोर)वेरिएबल.sh' फाइल में दिखाए गए की तरह कोड टाइप करें।
05:35 अब मैं कोड समझाता हूँ।
05:38 'हैश' और 'एक्सक्लमेशन' चिन्ह के साथ पहली लाइन, 'shebang' या 'bang' लाइन है।
05:44 'username=sunita' 'यूज़रडिफाइंड वेरिएबल' है और यह 'ग्लोबली' घोषित किया गया है।
05:51 'echo' फंक्शन के बाहर स्ट्रिंग को प्रदर्शित करेगा और
05:55 'डॉलर username' वेरिएबल 'यूज़रनेम' की वैल्यू प्रिंट करेगा।
06:00 इस प्रकार हमने 'BASH' स्क्रिप्ट में फंक्शन परिभाषित किया।
06:04 'फंक्शन्स' के बारे में विस्तार में चर्चा हम आगे के ट्यूटोरियल्स में करेंगे।
06:09 यह फंक्शन का ढाँचा है।
06:12 यहाँ 'username' की वैल्यू के साथ एक अन्य मैसेज 'inside function' प्रदर्शित किया जायेगा।
06:19 यहाँ, हम फंक्शन को कॉल करते हैं।
06:21 यह हमारा कोड है। अब इसे निष्पादित करते हैं।
06:23 'टर्मिनल' पर वापस आते हैं।
06:26 अब प्रोप्ट को क्लियर करते हैं।
06:28 सबसे पहले अपनी फाइल को निष्पादन योग्य बनाने की आवश्यकता है।
06:31 टाइप करें 'chmod' स्पेस 'प्लस x स्पेस g_(अंडरस्कोर)वेरिएबल.sh' एंटर दबाएं।
06:39 अब टाइप करें 'डॉट स्लैश g_(अंडरस्कोर)वेरिएबल.sh'
06:45 एंटर दबाएं।
06:47 आउटपुट देखें।
06:48 फंक्शन के बाहर 'यूज़रनेम' वैल्यू 'sunita' लेता है।
06:53 फंक्शन के अंदर भी, 'यूज़रनेम' समान वैल्यू 'sunita' लेता है।
06:59 ऐसा इसलिए है क्योंकि फंक्शन के बाहर 'यूज़रनेम' को 'ग्लोबली' घोषित किया गया था।
07:04 आगे, सीखते हैं कि वेरिएबल को 'लोकली' कैसे घोषित करते हैं।
07:09 टाइप करें 'gedit' 'स्पेस l_(अंडरस्कोर)वेरिएबल.sh स्पेस &' (ampersand sign)
07:18 एंटर दबाएं।
07:20 यहाँ अपने 'l_(अंडरस्कोर)वेरिएबल.sh' फाइल में दिखाए गए की तरह कोड टाइप करें।
07:25 अब मैं कोड समझाता हूँ।
07:28 फंक्शन के अंदर एक अतिरिक्त कोड की लाइन को छोड़कर, कोड पहले की तरह समान है।
07:36 'फंक्शन' ब्लॉक के अंदर हमारे पास एक लाइन है 'local' स्पेस 'username इक्वल्स टू jack'
07:41 यह, वेरिएबल 'यूज़रनेम लोकली' के लिए एक नयी वैल्यू नियुक्त करता है।
07:48 अब 'टर्मिनल' पर जाते हैं।
07:50 अब फाइल को निष्पादन योग्य बनाते हैं।
07:52 टाइप करें 'chmod' स्पेस 'प्लस x स्पेस l_वेरिएबल.sh'
08:00 एंटर दबाएं।
08:02 टाइप करें 'डॉट स्लैश l_वेरिएबल.sh'
08:07 एंटर दबाएं।
08:08 आउटपुट प्रदर्शित होता है
08:10 'फंक्शन' के बाहर 'यूज़रनेम' वैल्यू 'sunita' लेता है।
08:15 जबकि 'फंक्शन' के अंदर, 'यूज़रनेम' वैल्यू 'jack' लेता है।
08:20 ऐसा इसलिए है क्योंकि फंक्शन के अंदर 'यूज़रनेम' इस वैल्यू को 'लोकली' नियुक्त किया गया है।
08:26 अब जल्दी से देखते हैं कि कीबोर्ड से यूज़र इनपुट कैसे प्राप्त होता है।
08:31 'read' कमांड कीबोर्ड से इनपुट स्वीकार करने के लिए प्रयोग किया जाता है।
08:36 यह 'यूज़र डिफाइंड वेरिएबल' को एक इनपुट वैल्यू नियुक्त करने के लिए भी प्रयोग किया जा सकता है।
08:41 'read' कमांड का रचनाक्रम है..
08:44 'read स्पेस हाइफन p स्पेस डबल कोट्स में PROMPT'
08:50 ध्यान दें, कि 'PROMPT' बस एक स्ट्रिंग है, जो यूज़र इनपुट के लिए प्रतीक्षा करता है।
08:55 आप अपनी स्ट्रिंग से इसको बदल सकते हैं।
08:58 अब 'टर्मिनल' खोलते हैं।
09:00 टाइप करें 'gedit' स्पेस read.sh स्पेस &' (ampersand sign)
09:08 एंटर दबाएं।
09:09 अपनी 'read.sh' फाइल में प्रदर्शित की तरह कोड टाइप करें।
09:14 अब मैं कोड समझाता हूँ।
09:16 इस उदाहरण में, यूज़र के द्वारा कीबोर्ड से इनपुट दिया गया है।
09:21 यह 'bang' लाइन है।
09:23 यहाँ '-p' एक नयी लाइन के बिना प्रॉम्प्ट दिखाता है और कीबोर्ड से इनपुट लेता है।
09:31 यूज़र इनपुट, वेरिएबल 'यूज़रनेम' में संचित किया जायेगा।
09:36 'echo' कमांड मैसेज दिखाता है
09:38 'Hello' और कीबोर्ड से यूज़र द्वारा प्रविष्ट किया गया नाम।
09:43 अब हम प्रोग्राम निष्पादित करते हैं।
09:45 अपने टर्मिनल पर वापस आते हैं।
09:49 टाइप करें 'chmod' स्पेस 'प्लस x स्पेस read.sh'
09:55 एंटर दबाएं।
09:56 टाइप करें 'डॉट स्लैश read.sh' एंटर दबाएं।
10:01 यहाँ प्रदर्शित होता है 'Enter username'
10:04 मैं 'ashwini' टाइप करुँगा। एंटर दबाएं ।
10:08 मैसेज 'Hello ashwini' प्रदर्शित होता है।
10:13 'ashwini' इनपुट वैल्यू की तरह यूज़र डिफाइंड वेरिएबल 'यूज़रनेम' को नियुक्त किया गया था।
10:20 अब अपनी स्लाइड्स पर जाते हैं और सारांशित करते हैं।
10:23 इस ट्यूटोरियल में हमने निम्न सीखा,
10:26 * 'सिस्टम वेरिएबल्स'
10:27 * 'यूज़र डिफाइंड वेरिएबल्स'
10:29 * कीबोर्ड से यूज़र इनपुट स्वीकारना।
10:33 एक नियत कार्य में
10:34 निम्न सिस्टम वेरिएबल्स प्राप्त करने के लिए एक सरल 'Bash' प्रोग्राम लिखें।
10:38 * 'pwd' और * 'logname'
10:41 एक सरल 'Bash' प्रोग्राम लिखें।
10:43 * यूज़र से 'username' पूछना
10:46 * अगर यूज़र 10 सेकंड के अंदर कुछ भी प्रविष्ट नहीं करे, तो प्रोग्राम एग्ज़िट करना।
10:51 * नोट : 'read -(हाइफन) t 10 -(हाइफन) p'
10:56 निम्न लिंक पर उपलब्ध वीडियो देखें।
10:59 यह स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है।
11:02 अच्छी बैंडविड्थ न मिलने पर आप इसे डाउनलोड करके देख सकते हैं।
11:07 स्पोकन ट्यूटोरियल प्रोजेक्ट टीम स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं चलाती है। ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देते हैं।
11:16 अधिक जानकारी के लिए कृपया contact@spoken-tutorial.org पर लिखें।
11:23 स्पोकन ट्यूटोरियल प्रोजेक्ट टॉक टू अ टीचर प्रोजेक्ट का हिस्सा है।
11:27 यह भारत सरकार के एमएचआरडी के आईसीटी के माध्यम से राष्ट्रीय साक्षरता मिशन द्वारा समर्थित है।
11:34 इस मिशन पर अधिक जानकारी http://spoken-tutorial.org\NMEICT-Intro पर उपलब्ध है।
11:44 मैं यश वोरा अब आपसे विदा लेता हूँ। हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Devraj, Pratik kamble, Shruti arya