Linux-AWK/C2/Basics-of-Single-Dimensional-Array-in-awk/Bengali

From Script | Spoken-Tutorial
Jump to: navigation, search
Time
Narration
00:01 awk এ Basics of single dimensional array এর টিউটোরিয়ালে আপনাদের স্বাগত।
00:07 এখানে আমরা awk এ অ্যারে Arrays সম্পর্কে শিখব।
00:12 অ্যারের এলিমেন্ট নির্ধারণ করা।
00:15 এটি অন্য প্রোগ্রামিং ভাষার অ্যারের থেকে কিভাবে আলাদা এবং অ্যারের এলিমেন্ট রেফার করা।
00:23 আমরা এটি কিছু উদাহরণের মাধ্যমে করব।
00:26 টিউটোরিয়ালটি রেকর্ড করতে ব্যবহার করছি উবুন্টু লিনাক্স 16.04 অপারেটিং সিস্টেম এবং gedit টেক্সট এডিটর 3.20.1.
00:38 আপনি পছন্দের যে কোনো টেক্সট এডিটর ব্যবহার করতে পারেন।
00:42 টিউটোরিয়ালটি অনুশীলন করতে আপনাদের ওয়েবসাইটে আগের awk টিউটোরিয়ালগুলি দেখা উচিত।
00:49 আপনার C বা C++ এর মত কোনো প্রোগ্রামিং ভাষার মৌলিক জ্ঞান থাকতে হবে।
00:56 না হলে আমাদের ওয়েবসাইটে প্রাসঙ্গিক টিউটোরিয়ালটি দেখুন।
01:02 এই টিউটোরিয়ালে ব্যবহৃত ফাইল এই টিউটোরিয়াল পৃষ্ঠায় Code Files লিঙ্কে উপলব্ধ। তাদের ডাউনলোড করে এক্সট্র্যাক্ট করুন।
01:11 awk এ একটি অ্যারে কি? awk সম্পর্কিত এলিমেন্ট সংরক্ষণের জন্য অ্যারে সমর্থন করে।
01:18 এলিমেন্ট একটি সংখ্যা বা স্ট্রিং হতে পারে।
01:21 awk এ অ্যারে হল associative.
01:24 এর মানে প্রতিটি অ্যারে এলিমেন্ট একটি index-value পেয়ার।
01:29 এটি অন্য কোনো প্রোগ্রামিং ভাষার অ্যারের অনুরূপ দেখায়।
01:33 কিন্তু সেখানে কিছু গুরুত্বপূর্ণ পার্থক্য রয়েছে।
01:36 প্রথমে, এটি ব্যবহারের আগে আমাদের একটি অ্যারে ঘোষণা করার দরকার নেই।
01:41 এছাড়াও অ্যারেতে কতগুলি এলিমেন্ট থাকবে তা উল্লেখ করার প্রয়োজন নেই।
01:47 প্রোগ্রামিং ভাষাতে, অ্যারে ইনডেক্স সাধারণত একটি পজিটিভ পূর্ণসংখ্যা।
01:52 সাধারণত ইনডেক্স 0 থেকে শুরু হয়, তারপর 1, তারপর 2 এবং এইভাবে।
01:58 কিন্তু awk এ, ইনডেক্স যা কিছু হতে পারে - একটি সংখ্যা বা একটি স্ট্রিং।
02:03 এটি awk এ অ্যারে এলিমেন্ট নির্ধারণ করার সিনট্যাক্স। অ্যারের নাম যে কোনো বৈধ ভ্যারিয়েবল নাম হতে পারে।
02:11 এখানে ইনডেক্স একটি পূর্ণসংখ্যা বা একটি স্ট্রিং হতে পারে।
02:16 স্ট্রিং ডবল উদ্ধৃতিতে লিখতে হবে, এটি ইনডেক্স নাম হোক বা একটি ভ্যালু।
02:23 এটি একটি উদাহরণ দিয়ে বুঝি।
02:27 আমি ইতিমধ্যে কোড লিখেছি এবং এটি array_intro.awk হিসাবে সংরক্ষণ করেছি।
02:34 ফাইলটি প্লেয়ারের নীচের Code Files লিঙ্কে উপলব্ধ। এটি ডাউনলোড করে ব্যবহার করুন।
02:41 এখানে আমি উদাহরণ হিসাবে সপ্তাহান্ত নিয়েছি এবং এটি BEGIN বিভাগে লিখেছি।
02:48 এখানে, অ্যারের নাম হল day.
02:52 আমি ইনডেক্স হিসাবে 1 এবং ভ্যালু হিসাবে Sunday সেট করেছি।
02:57 এই অ্যারে এলিমেন্টে, আমি ইনডেক্স হিসাবে স্ট্রিং ব্যবহার করেছি। তাই প্রথম ইনডেক্সের জন্য, ভ্যালু হল Sunday.
03:06 সম্পূর্ণ অ্যারে একইভাবে নির্মিত হয়।
03:10 লক্ষ্য করুন, অ্যারে এলিমেন্ট ক্রম অনুসারে নেই। আমি তৃতীয় দিনের আগে চতুর্থ দিন ঘোষণা করেছি।
03:18 awk অ্যারেতে, ইনডেক্স ক্রমানুসারে থাকার দরকার নেই।
03:23 অ্যাসোসিয়েটেড অ্যারের সুবিধা হল নতুন জোড়া যে কোনো সময়ে জোড়া যাবে।
03:29 অ্যারেতে দিন 6 যোগ করি।
03:33 কার্সার অন্তিম লাইনের শেষে রাখুন এবং এন্টার টিপুন। তারপর নিম্ন লিখুন:
03:42 ফাইল সংরক্ষণ করুন।
03:44 অ্যারে ঘোষণা করেছি। কিন্তু কিভাবে অ্যারে এলিমেন্ট উল্লেখ করা উচিত?
03:49 একটি নির্দিষ্ট ইনডেক্সে এলিমেন্ট উল্লেখ করতে বর্গাকার বন্ধনীতে অ্যারের নাম এবং ইনডেক্স লিখুন।

এটি চেষ্টা করি।

03:58 আবার কোডে স্যুইচ করি।
04:01 কার্সার ক্লোসিং কোঁকড়া বন্ধনীর সামনে রাখুন।
04:05 এন্টার টিপুন এবং লিখুন print স্পেস day বর্গাকার বন্ধনীতে 6.
04:13 কোড সংরক্ষণ করুন।
04:15 Ctrl, Alt এবং T কী একসাথে টিপে টার্মিনাল খুলুন।
04:20 সেই ফোল্ডারে যান যেখানে cd কমান্ড দ্বারা Code Files ডাউনলোড এবং এক্সট্র্যাক্ট করেছেন।
04:27 এখন লিখুন awk স্পেস হাইফেন ছোটহাতের f স্পেস array_intro.awk. এন্টার টিপুন।
04:38 আমরা আউটপুট হিসাবে Friday দেখি।
04:42 এরপর নির্দিষ্ট কোন ইনডেক্সে অ্যারেতে কোন এলিমেন্ট বিদ্যমান কিনা তা যাচাই করব।
04:48 এরজন্য, in অপারেটর ব্যবহার করতে হবে। এটি একটি উদাহরণ দিয়ে ব্যাখ্যা করি।
04:55 এডিটর উইন্ডোতে কোডে যান।
04:59 কার্সার প্রিন্ট স্টেটমেন্টের শেষে রাখুন এবং Enter টিপুন। তারপর এটি লিখুন।
05:09 কোডটি সংরক্ষণ করুন।
05:11 এখন আমি দুটি if কন্ডিশন জুড়েছি।
05:15 প্রথম if কন্ডিশন যাচাই করে যে ইনডেক্স 2, day তে উপস্থিত কিনা।
05:21 হ্যাঁ হলে, সংশ্লিষ্ট প্রিন্ট স্টেটমেন্ট কার্যকর করা হবে।
05:26 তারপর দ্বিতীয় কন্ডিশন যাচাই করে যে ইনডেক্স 7, day তে উপস্থিত কিনা। এটি true হলে প্রিন্ট স্টেটমেন্ট কার্যকর করবে।
05:35 যেমনকি আমরা দেখি, ইনডেক্স 2 অ্যারেতে রয়েছে এবং 7 নয়। আউটপুট যাচাই করতে ফাইলটি এক্সিকিউট করি।
05:44 টার্মিনালে যান। পূর্বে চালিত কমান্ডে ফিরে পেতে আপ অ্যারো কী টিপুন।
05:51 এক্সিকিউট করতে এন্টার টিপুন।
05:54 আমরা আশানুরুপ আউটপুট পাই।
05:57 এখন আমরা কোডে আরো কিছু পরিবর্তন করব। এখানে দেখানো কোড আপডেট করুন।
06:04 day condition এ 7 এর নীচে, আমি আরেকটি কন্ডিশন জুড়েছি।
06:09 এটি যাচাই করবে যে ইনডেক্স 7 এর ভ্যালু নাল কি নয়।
06:14 true হলে, এটি প্রিন্ট করবে Index 7 is not null.
06:18 আমরা ইতিমধ্যে জানি যে আমাদের 7 এর কোনো ইনডেক্স নেই, তাই এটি কিছু প্রিন্ট করবে না।
06:24 এরপর, আমরা day তে condition 7 এর প্রিন্ট স্টেটমেন্ট বদলেছি।
06:30 কোডটি সংরক্ষণ করুন। এখন দেখি যে কোডটি কার্যকর করলে কি হয়।
06:35 টার্মিনালে যান। পূর্বে এক্সিকিউট করা কমান্ডটি পেতে আপ অ্যারো কী টিপুন।
06:43 এক্সিকিউট করতে এন্টার টিপুন।
06:46 আমরা অপ্রত্যাশিত আউটপুট পেয়েছি।
06:49 Index 7 is present after null comparison স্টেটমেন্ট প্রিন্ট হয়। এটি কিভাবে সম্ভব?
06:57 আমরা day[7] not equal to null লিখলে, আমরা index 7 এ এলিমেন্ট অ্যাক্সেসের চেষ্টা করছি।
07:04 এই অ্যাক্সেস নিজেই index 7 এ এলিমেন্ট বানাবে এবং null ভ্যালুর সাথে ইনিসিয়েলাইজ করবে।
07:12 এরপর, index 7 এ আসলে কোনো এলিমেন্ট উপস্থিত রয়েছে কিনা তা যাচাই করব।
07:18 null এলিমেন্ট ইতিমধ্যে তৈরী হওয়ায়, আউটপুট দেখায় যে Index 7, null তুলনার পর রয়েছে।
07:26 তাই এটি মনে রাখুন। day at index 7 not equal to null এলিমেন্টের উপস্থিতি যাচাই করার একটি ভুল উপায়।
07:34 এটি index 7 এ একটি null এলিমেন্ট বানাবে।
07:38 এর বদলে, আমাদের in অপারেটর ব্যবহার করতে হবে।
07:41 এটি অ্যারেতে কোন অতিরিক্ত এলিমেন্ট বানাবে না। এটি আমাদের টিউটোরিয়াল শেষে নিয়ে আসে।
07:50 এখানে আমরা awk এ Arrays সম্পর্কে শিখেছি।
07:54 অ্যারের এলিমেন্ট নির্ধারণ করা
07:56 এটি অন্যান্য প্রোগ্রামিং ভাষায় অ্যারে থেকে কিভাবে ভিন্ন।
08:00 অ্যারের এলিমেন্ট রেফার করুন।
08:03 অনুশীলনী হিসাবে - flowerColor অ্যারে নির্ধারণ করুন।
08:07 ইনডেক্স ফুলের নাম হবে।
08:10 Value ফুলের অনুরূপ রঙ হবে।
08:14 আপনার পছন্দের যে কোনো পাঁচটি ফুলের এন্ট্রি করুন।
08:18 চতুর্থ ফুলের রঙ প্রিন্ট করুন। Lotus ফুল অ্যারেতে উপস্থিত কিনা যাচাই করুন।
08:25 নিম্ন লিঙ্কে উপলব্ধ ভিডিওটি প্রকল্পকে সারসংক্ষেপ বোঝায়। এটি ডাউনলোড করে দেখুন।
08:33 স্পোকেন টিউটোরিয়াল প্রকল্প দল কর্মশালার আয়োজন করে. অনলাইন পরীক্ষা পাস করলে প্রশংসাপত্র দেয়।
08:42 আরো বিস্তারিত জানতে আমাদের লিখুন।
08:46 এই ফোরামে আপনার টাইমড ক্যোয়ারী পোস্ট করুন।
08:50 স্পোকেন টিউটোরিয়াল প্রকল্প ভারত সরকারের NMEICT, MHRD দ্বারা সমর্থিত। এই মিশনের আরো তথ্য এই লিঙ্কে প্রাপ্তিসাদ্ধ।
09:01 আই আই টী বোম্বে থেকে আমি বিদায় নিচ্ছি। আমাদের সাথে যোগাযোগের জন্য ধন্যবাদ।

Contributors and Content Editors

Kaushik Datta