Difference between revisions of "BASH/C2/Basics-of-Shell-Scripting/Bengali"
From Script | Spoken-Tutorial
| Line 10: | Line 10: | ||
|- | |- | ||
| 00:05 | | 00:05 | ||
| − | | এই টিউটোরিয়ালে আমরা শিখব | + | | এই টিউটোরিয়ালে আমরা শিখব |
|- | |- | ||
| 00:09 | | 00:09 | ||
| − | |সিস্টেম ভ্যারিয়েবল | + | |সিস্টেম ভ্যারিয়েবল |
|- | |- | ||
| Line 34: | Line 34: | ||
|- | |- | ||
| 00:29 | | 00:29 | ||
| − | | এখানে ব্যবহার করছি | + | | এখানে ব্যবহার করছি |
|- | |- | ||
| 00:32 | | 00:32 | ||
| Line 41: | Line 41: | ||
|- | |- | ||
| 00:35 | | 00:35 | ||
| − | |'''GNU Bash''' সংস্করণ '''4.1.10''' | + | |'''GNU Bash''' সংস্করণ '''4.1.10''' |
|- | |- | ||
| Line 61: | Line 61: | ||
|- | |- | ||
| 01:01 | | 01:01 | ||
| − | |দুই ধরনের ভ্যারিয়েবল হল | + | |দুই ধরনের ভ্যারিয়েবল হল |
| − | সিস্টেম ভ্যারিয়েবল | + | সিস্টেম ভ্যারিয়েবল |
ইউসার ডিফাইন্ড ভ্যারিয়েবল। | ইউসার ডিফাইন্ড ভ্যারিয়েবল। | ||
| Line 77: | Line 77: | ||
|- | |- | ||
| 01:17 | | 01:17 | ||
| − | |সাধারণভাবে ব্যবহৃত সিস্টেম ভ্যারিয়েবল হল | + | |সাধারণভাবে ব্যবহৃত সিস্টেম ভ্যারিয়েবল হল |
|- | |- | ||
| 01:20 | | 01:20 | ||
| − | | '''BASH_VERSION, ''' | + | | '''BASH_VERSION, ''' '''HOSTNAME, ''' |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 141: | Line 137: | ||
|- | |- | ||
|02:26 | |02:26 | ||
| − | | এখন লিখুন, | + | | এখন লিখুন, '''echo''' স্পেস ডাবল উদ্ধৃতিতে '''HOME''' (বড়হাতের অক্ষরে) |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 201: | Line 193: | ||
|- | |- | ||
| 03:33 | | 03:33 | ||
| − | | লিখুন '''echo''' স্পেস ডাবল উদ্ধৃতিতে ডলার চিহ্ন '''username''' | + | | লিখুন '''echo''' স্পেস ডাবল উদ্ধৃতিতে ডলার চিহ্ন '''username''' |
|- | |- | ||
| Line 225: | Line 217: | ||
|- | |- | ||
|03:59 | |03:59 | ||
| − | |এর জন্য সিনট্যাক্স হল '''unset variablename''' | + | |এর জন্য সিনট্যাক্স হল '''unset variablename''' |
|- | |- | ||
| Line 273: | Line 265: | ||
|- | |- | ||
| 05:04 | | 05:04 | ||
| − | | টার্মিনালে ফিরে গিয়ে লিখুন | + | | টার্মিনালে ফিরে গিয়ে লিখুন |
|- | |- | ||
| Line 357: | Line 349: | ||
|- | |- | ||
|06:39 | |06:39 | ||
| − | |এখন লিখুন ডট স্ল্যাশ '''g''' আন্ডারস্কোর '''variable''' ডট '''sh''' | + | |এখন লিখুন ডট স্ল্যাশ '''g''' আন্ডারস্কোর '''variable''' ডট '''sh''' |
|- | |- | ||
| Line 365: | Line 357: | ||
|- | |- | ||
| 06:47 | | 06:47 | ||
| − | | আউটপুট দেখুন। | + | | আউটপুট দেখুন। '''Outside function''' এ '''username''', '''sunita''' নেয়। |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 405: | Line 393: | ||
|- | |- | ||
|07:36 | |07:36 | ||
| − | | ফাংশন ব্লকের ভিতরে একটি লাইন রয়েছে, '''local''' স্পেস '''username''' ইকুয়াল্স টু '''jack''' | + | | ফাংশন ব্লকের ভিতরে একটি লাইন রয়েছে, '''local''' স্পেস '''username''' ইকুয়াল্স টু '''jack''' |
|- | |- | ||
| Line 465: | Line 453: | ||
|- | |- | ||
| 08:41 | | 08:41 | ||
| − | | '''read''' কমান্ডের সিনট্যাক্স হল | + | | '''read''' কমান্ডের সিনট্যাক্স হল |
|- | |- | ||
| Line 532: | Line 520: | ||
|- | |- | ||
| 09:49 | | 09:49 | ||
| − | |লিখুন '''chmod''' স্পেস প্লাস '''x''' স্পেস '''read''' ডট '''sh''' | + | |লিখুন '''chmod''' স্পেস প্লাস '''x''' স্পেস '''read''' ডট '''sh''' |
|- | |- | ||
| 09:55 | | 09:55 | ||
| − | | '''Enter''' টিপুন। | + | | '''Enter''' টিপুন। লিখুন ডট স্ল্যাশ '''read''' ডট '''sh'''. '''Enter''' টিপুন। |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 564: | Line 548: | ||
|- | |- | ||
| 10:23 | | 10:23 | ||
| − | | এখানে শিখেছি | + | | এখানে শিখেছি |
|- | |- | ||
| 10:26 | | 10:26 | ||
| − | |সিস্টেম ভ্যারিয়েবল, | + | |সিস্টেম ভ্যারিয়েবল, ইউসার ডিফাইন্ড ভ্যারিয়েবল এবং |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 580: | Line 560: | ||
|- | |- | ||
| 10:33 | | 10:33 | ||
| − | | এখন | + | | এখন নিম্ন সিস্টেম ভ্যারিয়েবল পেতে একটি সহজ ব্যাশ প্রোগ্রাম লিখুন। |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|- | |- | ||
| 10:38 | | 10:38 | ||
| − | |'''pwd''' এবং '''logname''' | + | |'''pwd''' এবং '''logname''' |
|- | |- | ||
Latest revision as of 18:07, 23 February 2017
| 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 OS এবং |
| 00:35 | GNU Bash সংস্করণ 4.1.10 |
| 00:40 | অনুশীলনের জন্য GNU Bash 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 লিখে Enter টিপুন। |
| 01:38 | এটি সকল সিস্টেম ভ্যারিয়েবল প্রদর্শন করবে। |
| 01:42 | অথবা আপনি env বা printenv লিখে সকল সিস্টেম ভ্যারিয়েবল দেখতে পারেন। |
| 01:53 | প্রম্পট মুছে ফেলি। |
| 01:55 | এখন লিখুন echo স্পেস ডবল উদ্ধৃতিতে ডলার চিহ্ন HOSTNAME |
| 02:01 | এবং এখন Enter টিপুন। |
| 02:04 | সিস্টেমের হোস্টনেম প্রদর্শিত হবে। |
| 02:07 | এখন হোম ডাইরেক্টরীর সম্পূর্ণ পাথ নির্ণয় করি। |
| 02:11 | লিখুন echo স্পেস ডবল উদ্ধৃতিতে ডলার চিহ্ন HOME (বড়হাতের অক্ষরে) |
| 02:18 | Enter টিপুন। |
| 02:21 | ইউসারের হোম ডাইরেক্টরীর সম্পূর্ণ পাথ প্রদর্শিত হবে। |
| 02:26 | এখন লিখুন, echo স্পেস ডাবল উদ্ধৃতিতে HOME (বড়হাতের অক্ষরে) |
| 02:32 | Enter টিপুন। |
| 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, equal to চিহ্ন এবং sunita এর মাঝে কোনো ফাঁকা স্থান থাকা উচিত নয়। |
| 03:29 | এখন Enter টিপুন। |
| 03:30 | username ভ্যারিয়েবলের ভ্যালু প্রদর্শন করতে |
| 03:33 | লিখুন echo স্পেস ডাবল উদ্ধৃতিতে ডলার চিহ্ন username |
| 03:40 | Enter টিপুন। |
| 03:42 | এটি টার্মিনালে sunita প্রদর্শন করবে। |
| 03:46 | ভ্যারিয়েবলের ভ্যালু আনসেট করা যেতে পারে। |
| 03:50 | স্লাইডে ফিরে আসি। |
| 03:52 | unset, ভ্যারিয়েবলের ভ্যালু unset কমান্ড ব্যবহার করে আনসেট করা যেতে পারে। |
| 03:59 | এর জন্য সিনট্যাক্স হল unset variablename |
| 04:03 | এখন ইউসারনেম যেখানে ভ্যারিয়েবল সেই উদাহরণ ব্যবহার করি। |
| 04:08 | টার্মিনালে ফিরে আসি। এখন লিখুন unset স্পেস username. Enter টিপুন। |
| 04:18 | যাচাই করতে লিখুন echo স্পেস ডাবল উদ্ধৃতিতে ডলার চিহ্ন username. Enter টিপুন। |
| 04:28 | টার্মিনালে কিছুই দেখায় না। |
| 04:30 | এর মানে username ভ্যারিয়েবলের ভ্যালু মুছে ফেলা হয়েছে। |
| 04:36 | এখন স্লাইডে ফিরে আসি। |
| 04:39 | গ্লোবাল এবং লোকাল ভ্যারিয়েবল। |
| 04:42 | শেল স্ক্রিপ্টে, ইউসার ডিফাইন্ড ভ্যারিয়েবল গ্লোবাল বা লোকাল রূপে ঘোষণা করা যেতে পারে। |
| 04:49 | ডিফল্টরূপে, সকল ভ্যারিয়েবল গ্লোবাল। |
| 04:52 | এর মানে ফাংশনের ভিতরে এবং বাইরে ভ্যালু একই থাকে। |
| 04:59 | এখন ভ্যারিয়েবল গ্লোবাল বা লোকাল রূপে ঘোষণা করা শিখি। |
| 05:04 | টার্মিনালে ফিরে গিয়ে লিখুন |
| 05:07 | gedit স্পেস g আন্ডারস্কোর variable ডট sh স্পেস & চিহ্ন। |
| 05:16 | gedit হল টেক্সট এডিটর, g আন্ডারস্কোর variable ডট sh আমাদের ফাইলের নাম |
| 05:23 | এবং & (এম্পারসেন্ড) প্রম্পট মুক্ত করতে ব্যবহৃত হয়। |
| 05:28 | Enter টিপুন। |
| 05:30 | এখন এখানে g আন্ডারস্কোর variable ডট sh ফাইলে প্রদর্শিত কোড লিখুন। |
| 05:35 | কোড ব্যাখ্যা করি। |
| 05:38 | হ্যাশ এবং বিস্ময়বোধক চিহ্ন সহ প্রথম লাইন হল shebang বা bang লাইন। |
| 05:44 | username=sunita হল ইউসার ডিফাইন্ড ভ্যারিয়েবল যা গ্লোবালি ঘোষিত করা হয়েছে। |
| 05:51 | echo, outside function স্ট্রিং প্রদর্শন করবে এবং |
| 05:55 | $username ভ্যারিয়েবল username এর ভ্যালু প্রিন্ট করবে। |
| 06:00 | এইভাবে আমরা স্ক্রিপ্টে ফাংশন সংজ্ঞায়িত করেছি। |
| 06:04 | আমরা পরের টিউটোরিয়ালে, ফাংশন সম্পর্কে বিস্তারিত আলোচনা করব। |
| 06:09 | এটি হল ফাংশনের বডি। |
| 06:12 | এখানে ইউসারনেমের ভ্যালুর সাথে আরেকটি ম্যাসেজ inside function প্রদর্শিত হবে। |
| 06:19 | এখানে ফাংশন কল করি। |
| 06:21 | এটি আমাদের কোড। এটি এক্সিকিউট করি। |
| 06:23 | টার্মিনালে ফিরে আসি। |
| 06:26 | প্রম্পট মুছে ফেলি। |
| 06:28 | ফাইল এক্সিকিউটেবল করতে |
| 06:31 | লিখুন chmod স্পেস প্লাস x স্পেস g আন্ডারস্কোর variable ডট sh. Enter টিপুন। |
| 06:39 | এখন লিখুন ডট স্ল্যাশ g আন্ডারস্কোর variable ডট sh |
| 06:45 | Enter টিপুন। |
| 06:47 | আউটপুট দেখুন। Outside function এ username, sunita নেয়। |
| 06:53 | এছাড়াও Inside function এ username একই ভ্যালু sunita নেয়। |
| 06:59 | এর কারণ হল username, Outside function এ গ্লোবালি ঘোষিত করা হয়েছে। |
| 07:04 | এরপর, ভ্যারিয়েবল লোকাল রূপে ঘোষিত করা শিখি। |
| 07:09 | লিখুন gedit স্পেস l আন্ডারস্কোর variable ডট sh স্পেস & চিহ্ন। |
| 07:18 | Enter টিপুন। |
| 07:20 | এখন এখানে l আন্ডারস্কোর variable ডট sh ফাইলে প্রদর্শিত কোড লিখুন। |
| 07:25 | কোড ব্যাখ্যা করি। |
| 07:28 | Inside function কোডের একটি অতিরিক্ত লাইন ছাড়া, কোড আগের মত একই। |
| 07:36 | ফাংশন ব্লকের ভিতরে একটি লাইন রয়েছে, local স্পেস username ইকুয়াল্স টু jack |
| 07:41 | এটি username ভ্যারিয়েবলে লোকাল রূপে নতুন ভ্যালু নির্ধারিত করে। |
| 07:48 | এখন টার্মিনালে যাই। |
| 07:50 | এখন ফাইল এক্সিকিউটেবল করতে |
| 07:52 | লিখুন chmod স্পেস প্লাস x স্পেস l আন্ডারস্কোর variable ডট sh |
| 08:00 | Enter টিপুন। |
| 08:02 | লিখুন ডট স্ল্যাশ l আন্ডারস্কোর variable ডট sh |
| 08:07 | Enter টিপুন। |
| 08:08 | আউটপুট দেখায়। |
| 08:10 | Outside function এ username, sunita গ্রহণ করে। |
| 08:15 | যখনকি inside function এ username, jack গ্রহণ করে। |
| 08:20 | এর কারণ হল username ফাংশনে লোকাল রূপে এই ভ্যালু নির্ধারিত করেছে। |
| 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 স্পেস & চিহ্ন। |
| 09:08 | Enter টিপুন। |
| 09:09 | এখন read ডট sh ফাইলে প্রদর্শিত কোড লিখুন। |
| 09:14 | কোড ব্যাখ্যা করি। |
| 09:16 | এখানে ইনপুট ইউসারের দ্বারা কীবোর্ড থেকে দেওয়া হয়। |
| 09:21 | এটি bang লাইন। |
| 09:23 | এখানে হাইফেন p নতুন লাইন ছাড়া প্রম্পট দেখায় এবং কীবোর্ড থেকে ইনপুট নেয়। |
| 09:31 | ইউসার ইনপুট username ভ্যারিয়েবলে সংরক্ষণ হবে। |
| 09:36 | echo কমান্ড ম্যাসেজ দেখায়। |
| 09:38 | Hello এবং কীবোর্ডের মাধ্যমে ইউসারের দ্বারা লিখিত নাম। |
| 09:43 | প্রোগ্রাম এক্সিকিউট করি। |
| 09:45 | টার্মিনালে ফিরে আসি। |
| 09:49 | লিখুন chmod স্পেস প্লাস x স্পেস read ডট sh |
| 09:55 | Enter টিপুন। লিখুন ডট স্ল্যাশ read ডট sh. Enter টিপুন। |
| 10:01 | এখানে এটি Enter username দেখায়। |
| 10:04 | আমি ashwini লিখে Enter টিপব। |
| 10:08 | Hello ashwini ম্যাসেজ প্রদর্শিত হয়েছে। |
| 10:13 | ashwini ইউসার ডিফাইন্ড ভ্যারিয়েবল username এ একটি ইনপুট ভ্যালু হিসাবে নির্ধারিত। |
| 10:20 | স্লাইডে ফিরে গিয়ে সংক্ষিপ্তকরণ করি। |
| 10:23 | এখানে শিখেছি |
| 10:26 | সিস্টেম ভ্যারিয়েবল, ইউসার ডিফাইন্ড ভ্যারিয়েবল এবং |
| 10:29 | কীবোর্ডের মাধ্যমে ইউসার ইনপুট গ্রহণ করা। |
| 10:33 | এখন নিম্ন সিস্টেম ভ্যারিয়েবল পেতে একটি সহজ ব্যাশ প্রোগ্রাম লিখুন। |
| 10:38 | pwd এবং logname |
| 10:41 | একটি সহজ ব্যাশ প্রোগ্রাম লিখে |
| 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 | স্পোকেন টিউটোরিয়াল প্রকল্প Talk to a Teacher প্রকল্পের অংশবিশেষ। |
| 11:27 | এটি ভারত সরকারের ICT, MHRD এর জাতীয় শিক্ষা মিশন দ্বারা সমর্থিত। |
| 11:34 | এই বিষয়ে বিস্তারিত তথ্য এই লিঙ্কে প্রাপ্তিসাধ্য। |
| 11:40 | এই স্ক্রিপ্ট FOSSEE এবং স্পোকেন টিউটোরিয়াল দল তৈরী করেছে। |
| 11:44 | আমি কৌশিক দত্ত এই টিউটোরিয়ালটি অনুবাদ করেছি। অংশগ্রহনের জন্য ধন্যবাদ। |