Difference between revisions of "Linux/C2/Redirection-Pipes/Bengali"

From Script | Spoken-Tutorial
Jump to: navigation, search
(Created page with '{| border=1 !Time !Narration |- |00:00:00 |Redirection এবং Pipes সংক্রান্ত এই কথ্য টিউটোরিয়ালটিতে আপন…')
 
Line 3: Line 3:
 
!Narration
 
!Narration
 
|-
 
|-
|00:00:00
+
|00:00
 
|Redirection এবং Pipes সংক্রান্ত  এই কথ্য    টিউটোরিয়ালটিতে আপনাদের  স্বাগত জানাচ্ছি ।
 
|Redirection এবং Pipes সংক্রান্ত  এই কথ্য    টিউটোরিয়ালটিতে আপনাদের  স্বাগত জানাচ্ছি ।
 
|-
 
|-
|00:07:00
+
|00:07
 
|আমি উবুন্টু ১০.০৪  ব্যবহার করছি ।
 
|আমি উবুন্টু ১০.০৪  ব্যবহার করছি ।
 
|-
 
|-
|00:09:00
+
|00:09
 
|আমি ধরে নিচ্ছি, লিনাক্স  অপারেটিং সিস্টেম এবং মৌলিক নির্দেশাবলী সম্পর্কে আপনার কিছু ধারণা আছে ।  
 
|আমি ধরে নিচ্ছি, লিনাক্স  অপারেটিং সিস্টেম এবং মৌলিক নির্দেশাবলী সম্পর্কে আপনার কিছু ধারণা আছে ।  
 
|-
 
|-
|00:16:00
+
|00:16
 
|সেই সংক্রান্ত মৌখিক টিউটোরিয়াল এই  ওয়েবসাইট-টিতে  প্রাপ্তিসাধ্য ।
 
|সেই সংক্রান্ত মৌখিক টিউটোরিয়াল এই  ওয়েবসাইট-টিতে  প্রাপ্তিসাধ্য ।
 
|-
 
|-
|00:22:00
+
|00:22
 
|মনে রাখবেন যে লিনাক্স case sensitive ।
 
|মনে রাখবেন যে লিনাক্স case sensitive ।
 
|-   
 
|-   
|00:25:00
+
|00:25
 
|অন্যথায় উল্লেখ করা না থাকলে এই টিউটোরিয়ালটিতে ব্যবহৃত সমস্ত র্নিদেশাবলী ছোট  হাতের অক্ষরে আছে ।
 
|অন্যথায় উল্লেখ করা না থাকলে এই টিউটোরিয়ালটিতে ব্যবহৃত সমস্ত র্নিদেশাবলী ছোট  হাতের অক্ষরে আছে ।
 
|-
 
|-
|00:32:00
+
|00:32
 
|লিনাক্স-এ অধিকাংশ কাজ-ই  টার্মিনাল-এর মাধ্যমে হয় ।
 
|লিনাক্স-এ অধিকাংশ কাজ-ই  টার্মিনাল-এর মাধ্যমে হয় ।
 
|-
 
|-
|00:35:00
+
|00:35
 
|যখন আমরা একটি কমান্ড চালাতে চাই, আমরা  কিবোর্ডের মাধ্যমে সেটি লিখি ।
 
|যখন আমরা একটি কমান্ড চালাতে চাই, আমরা  কিবোর্ডের মাধ্যমে সেটি লিখি ।
 
|-
 
|-
|00:39:00
+
|00:39
 
|ধরুন, আমরা তারিখ এবং সময় দেখতে চাইছি ।
 
|ধরুন, আমরা তারিখ এবং সময় দেখতে চাইছি ।
 
|-
 
|-
|00:41:00
+
|00:41
 
|কিবোর্ড-এর মাধ্যমে "date" লিখুন    এবং এন্টার টিপুন  ।
 
|কিবোর্ড-এর মাধ্যমে "date" লিখুন    এবং এন্টার টিপুন  ।
 
|-
 
|-
|00:46:00
+
|00:46
 
|সাধারণত আমরা কিবোর্ড-এর  মাধ্যমে ইনপুট দিয়ে থাকি ।
 
|সাধারণত আমরা কিবোর্ড-এর  মাধ্যমে ইনপুট দিয়ে থাকি ।
 
|-
 
|-
|00:48:00
+
|00:48
 
|অনুরূপভাবে,  কমান্ডের আউটপুট, টার্মিনাল উইন্ডোত়ে প্রদর্শিত হয় ।
 
|অনুরূপভাবে,  কমান্ডের আউটপুট, টার্মিনাল উইন্ডোত়ে প্রদর্শিত হয় ।
 
|-
 
|-
|00:56:00
+
|00:56
 
|এছাড়াও কোনো কমান্ড চানালোর সময় কিছু ত্রুটি ঘটতে পারে ।
 
|এছাড়াও কোনো কমান্ড চানালোর সময় কিছু ত্রুটি ঘটতে পারে ।
 
|-
 
|-
|00:59:00
+
|00:59
 
|উদাহরস্বরূপ, লিখুন  "cat space aaa" । এন্টার টিপুন ।
 
|উদাহরস্বরূপ, লিখুন  "cat space aaa" । এন্টার টিপুন ।
 
|-
 
|-
|01:05:00
+
|01:05
 
|aaa নামক কোনো ফাইলের অস্তিত্ব নেই ।
 
|aaa নামক কোনো ফাইলের অস্তিত্ব নেই ।
 
|-
 
|-
|01:08:00
+
|01:08
 
|সেই ত্রুটি- সংক্রান্ত বার্তা এখানে দেখা যাচ্ছে ।
 
|সেই ত্রুটি- সংক্রান্ত বার্তা এখানে দেখা যাচ্ছে ।
 
|-
 
|-
|01:10:00
+
|01:10
 
|এখন এই ত্রুটি-টিও টার্মিনাল উইন্ডোর উপর দেখা যাচ্ছে  ।  
 
|এখন এই ত্রুটি-টিও টার্মিনাল উইন্ডোর উপর দেখা যাচ্ছে  ।  
 
|-
 
|-
|01:20:00
+
|01:20
 
|কমান্ড সংক্রান্ত  তিনটি বিশেষ  কর্ম  হল ইনপুট নেওয়া, আউটপুট দেখানো এবং error বা  ত্রুটি রিপোর্ট করা ।
 
|কমান্ড সংক্রান্ত  তিনটি বিশেষ  কর্ম  হল ইনপুট নেওয়া, আউটপুট দেখানো এবং error বা  ত্রুটি রিপোর্ট করা ।
 
|-
 
|-
|01:24:00
+
|01:24
 
|Redirection  শেখার  পূর্বে  আমাদের দুটি গুরুত্বপূর্ণ ধারণা সম্পর্কে জানা উচিত। সেগুলি হল -  স্ট্রিম  এবং  file descriptor  ।
 
|Redirection  শেখার  পূর্বে  আমাদের দুটি গুরুত্বপূর্ণ ধারণা সম্পর্কে জানা উচিত। সেগুলি হল -  স্ট্রিম  এবং  file descriptor  ।
 
|-
 
|-
|01:31:00
+
|01:31
 
|লিনাক্স শেল যেমন Bash, অক্ষরের স্ট্রিম-এর মাধ্যমে ইনপুট গ্রহণ করে ও আউটপুট পাঠায়  ।
 
|লিনাক্স শেল যেমন Bash, অক্ষরের স্ট্রিম-এর মাধ্যমে ইনপুট গ্রহণ করে ও আউটপুট পাঠায়  ।
 
|-
 
|-
|01:37:00
+
|01:37
 
|কোনো  অক্ষর তার  আগের এবং পরের অক্ষরের উপর নির্ভর করে না ।
 
|কোনো  অক্ষর তার  আগের এবং পরের অক্ষরের উপর নির্ভর করে না ।
 
|-
 
|-
|01:41:00
+
|01:41
 
|স্ট্রিম-গুলি  ফাইল IO পদ্ধতির দ্বারা  ব্যবহার করা হয় ।
 
|স্ট্রিম-গুলি  ফাইল IO পদ্ধতির দ্বারা  ব্যবহার করা হয় ।
 
|-
 
|-
|01:44:00
+
|01:44
 
|অক্ষরের স্ট্রিম-টি কোনো একটি ফাইল বা কীবোর্ড বা  উইন্ডো ইত্যাদি কোথা থেকে আসছে বা কোথায় যাচ্ছে, ত়া কোনো মূল্য রাখে না  ।
 
|অক্ষরের স্ট্রিম-টি কোনো একটি ফাইল বা কীবোর্ড বা  উইন্ডো ইত্যাদি কোথা থেকে আসছে বা কোথায় যাচ্ছে, ত়া কোনো মূল্য রাখে না  ।
 
|-
 
|-
|01:51:00
+
|01:51
 
|লিনাক্স-এ প্রত্যেক খোলা ফাইল-এর  সঙ্গে একটি পূর্ণসংখ্যা সংখ্যা  যুক্ত থাকে ।
 
|লিনাক্স-এ প্রত্যেক খোলা ফাইল-এর  সঙ্গে একটি পূর্ণসংখ্যা সংখ্যা  যুক্ত থাকে ।
 
|-
 
|-
|01:57:00
+
|01:57
 
|এটিকে    file descriptor  বলা হয় ।
 
|এটিকে    file descriptor  বলা হয় ।
 
|-
 
|-
|02:05:00
+
|02:05
 
|লিনাক্স শেল তিনটি  স্ট্যান্ডার্ড I/O স্ট্রিম ব্যবহার  করে ।
 
|লিনাক্স শেল তিনটি  স্ট্যান্ডার্ড I/O স্ট্রিম ব্যবহার  করে ।
 
|-
 
|-
|02:08:00
+
|02:08
 
|প্রতিটি একটি সুনির্দিষ্ট  ফাইল descriptor-এর সাথে যুক্ত থাকে ।
 
|প্রতিটি একটি সুনির্দিষ্ট  ফাইল descriptor-এর সাথে যুক্ত থাকে ।
 
|-
 
|-
|02:12:00
+
|02:12
 
|''stdin হল স্ট্যান্ডার্ড  ইনপুট স্ট্রিম ।
 
|''stdin হল স্ট্যান্ডার্ড  ইনপুট স্ট্রিম ।
 
|-
 
|-
|02:15:00
+
|02:15
 
|এটি কমান্ড-এ ইনপুট দেয় ।
 
|এটি কমান্ড-এ ইনপুট দেয় ।
 
|-
 
|-
|02:17:00
+
|02:17
 
|এর  ফাইল descriptor মান 0 ।
 
|এর  ফাইল descriptor মান 0 ।
 
|-
 
|-
|02:19:00
+
|02:19
 
|''stdout'' হল স্ট্যান্ডার্ড  আউটপুট স্ট্রিম ।
 
|''stdout'' হল স্ট্যান্ডার্ড  আউটপুট স্ট্রিম ।
 
|-
 
|-
|02:22:00
+
|02:22
 
|এটি কমান্ড-এর আউটপুট দেখায় । এর  ফাইল বর্ণনাকারীর মান ১  ।
 
|এটি কমান্ড-এর আউটপুট দেখায় । এর  ফাইল বর্ণনাকারীর মান ১  ।
 
|-
 
|-
|02:26:00
+
|02:26
 
|stderr হল স্ট্যান্ডার্ড  এরর  স্ট্রিম । এটি  কমান্ড-এর  ত্রুটি-গুলি  প্রদর্শন  করে । এর  ফাইল descriptor হল  ২  ।
 
|stderr হল স্ট্যান্ডার্ড  এরর  স্ট্রিম । এটি  কমান্ড-এর  ত্রুটি-গুলি  প্রদর্শন  করে । এর  ফাইল descriptor হল  ২  ।
 
|-
 
|-
|02:36:00
+
|02:36
 
|ইনপুট স্ট্রিম প্রোগ্রামের ইনপুট প্রদান করে ।
 
|ইনপুট স্ট্রিম প্রোগ্রামের ইনপুট প্রদান করে ।
 
|-
 
|-
|02:40:00
+
|02:40
 
|সাধারনতঃ  এটি টার্মিনাল keystrokes থেকে ইনপুট নেয় ।
 
|সাধারনতঃ  এটি টার্মিনাল keystrokes থেকে ইনপুট নেয় ।
 
|-
 
|-
|02:44:00
+
|02:44
 
|আউটপুট স্ট্রিম সাধারনতঃ  টার্মিনালে অক্ষর প্রিন্ট করে ।
 
|আউটপুট স্ট্রিম সাধারনতঃ  টার্মিনালে অক্ষর প্রিন্ট করে ।
 
|-
 
|-
|02:47:00
+
|02:47
 
|আগে টার্মিনাল ছিল  ASCII typewriter বা display terminal ।
 
|আগে টার্মিনাল ছিল  ASCII typewriter বা display terminal ।
 
|-
 
|-
|02:52:00
+
|02:52
 
|কিন্তু এখন এটি গ্রাফিকাল ডেস্কটপ-এর উপর একটি টেক্সট উইন্ডো  ।
 
|কিন্তু এখন এটি গ্রাফিকাল ডেস্কটপ-এর উপর একটি টেক্সট উইন্ডো  ।
 
|-
 
|-
|02:56:00
+
|02:56
 
|আমরা দেখেছি যে ৩ টি  স্ট্রিমই  স্বাভাবিকভাবে  কোনো ফাইল-এর সাথে  সংযুক্ত থাকে ।
 
|আমরা দেখেছি যে ৩ টি  স্ট্রিমই  স্বাভাবিকভাবে  কোনো ফাইল-এর সাথে  সংযুক্ত থাকে ।
 
|-
 
|-
|03:01:00
+
|03:01
 
|কিন্তু লিনাক্সে আমরা এটির পরিবর্তন করতে পারি ।
 
|কিন্তু লিনাক্সে আমরা এটির পরিবর্তন করতে পারি ।
 
|-
 
|-
|03:04:00
+
|03:04
 
|আমরা এই ৩-টি  স্ট্রিম অন্যান্য ফাইলের  সাথে সংযুক্ত  করতে পারি ।
 
|আমরা এই ৩-টি  স্ট্রিম অন্যান্য ফাইলের  সাথে সংযুক্ত  করতে পারি ।
 
|-
 
|-
|03:07:00
+
|03:07
 
|এই প্রক্রিয়া-টিকে redirection বা  পুনর্নির্দেশনা বলা হয় ।
 
|এই প্রক্রিয়া-টিকে redirection বা  পুনর্নির্দেশনা বলা হয় ।
 
|-
 
|-
|03:09:00
+
|03:09
 
|এখন দেখা যাক কিভাবে এই  ৩  স্ট্রিম-এ পুনর্নির্দেশনা  করা যায়  ।
 
|এখন দেখা যাক কিভাবে এই  ৩  স্ট্রিম-এ পুনর্নির্দেশনা  করা যায়  ।
 
|-
 
|-
|03:14:00
+
|03:14
 
| প্রথমে দেখা যাক স্ট্যান্ডার্ড ইনপুট কিভাবে পুনঃনির্দেশিত করা যায়  ।
 
| প্রথমে দেখা যাক স্ট্যান্ডার্ড ইনপুট কিভাবে পুনঃনির্দেশিত করা যায়  ।
 
|-
 
|-
|03:17:00
+
|03:17
 
|আমরা একটি ফাইল থেকে standardin, <(বামকোণী বন্ধনী) অপারেটর ব্যবহার করে পুনঃনির্দেশিত করতে পারি ।
 
|আমরা একটি ফাইল থেকে standardin, <(বামকোণী বন্ধনী) অপারেটর ব্যবহার করে পুনঃনির্দেশিত করতে পারি ।
 
|-
 
|-
|03:22:00
+
|03:22
 
|আমরা জানি যে একটি ফাইলের লাইন, শব্দ এবং অক্ষরের সংখ্যা জানতে wc কমান্ডের ব্যবহার করা হয় ।
 
|আমরা জানি যে একটি ফাইলের লাইন, শব্দ এবং অক্ষরের সংখ্যা জানতে wc কমান্ডের ব্যবহার করা হয় ।
 
|-
 
|-
|03:28:00
+
|03:28
 
|টার্মিনাল  উইন্ডো-ত়ে wc লিখুন ।
 
|টার্মিনাল  উইন্ডো-ত়ে wc লিখুন ।
 
|-
 
|-
|03:31:00
+
|03:31
 
|এন্টার টিপুন ।
 
|এন্টার টিপুন ।
 
|-
 
|-
|03:32:00
+
|03:32
 
|কারসর-টি দপদপ  করছে অর্থাৎ আমাদের কিবোর্ড-এর মাধ্যমে ইনপুট দিতে হবে ।
 
|কারসর-টি দপদপ  করছে অর্থাৎ আমাদের কিবোর্ড-এর মাধ্যমে ইনপুট দিতে হবে ।
 
|-
 
|-
|03:37:00
+
|03:37
 
|কিছু লেখা যাক  "This tutorial is very important" ।
 
|কিছু লেখা যাক  "This tutorial is very important" ।
 
|-
 
|-
|03:46:00
+
|03:46
 
|এন্টার টিপুন ।
 
|এন্টার টিপুন ।
 
|-
 
|-
|03:48:00
+
|03:48
 
|এবার ctrl ও d কী  একসাথে টিপুন ।
 
|এবার ctrl ও d কী  একসাথে টিপুন ।
 
|-
 
|-
|03:52:00
+
|03:52
 
|এখন যে লাইনগুলি আমরা লিখেছি, তার উপর  কমান্ড-টি কাজ করেছে  ।
 
|এখন যে লাইনগুলি আমরা লিখেছি, তার উপর  কমান্ড-টি কাজ করেছে  ।
 
|-
 
|-
|03:55:00
+
|03:55
 
|এই কমান্ড-টি টার্মিনাল-এ আউটপুট দেখাছে ।
 
|এই কমান্ড-টি টার্মিনাল-এ আউটপুট দেখাছে ।
 
|-
 
|-
|03:57:00
+
|03:57
 
|এখানে wc কমান্ড-এর পর কোনো ফাইল উল্লেখ করা  হয়নি ।
 
|এখানে wc কমান্ড-এর পর কোনো ফাইল উল্লেখ করা  হয়নি ।
 
|-
 
|-
|04:01:00
+
|04:01
 
|তাই কমান্ড-টি স্ট্যান্ডার্ড  ইনপুট স্ট্রিম থেকে ইনপুট নিয়েছে  ।
 
|তাই কমান্ড-টি স্ট্যান্ডার্ড  ইনপুট স্ট্রিম থেকে ইনপুট নিয়েছে  ।
 
|-
 
|-
|04:04:00
+
|04:04
 
|স্ট্যান্ডার্ড  ইনপুট স্ট্রিম স্বাভাবিকভাবে-ই  কিবোর্ড-এর সাথে যুক্ত থাকে । তাই  wc কিবোর্ড থেকে ইনপুট নেয় ।
 
|স্ট্যান্ডার্ড  ইনপুট স্ট্রিম স্বাভাবিকভাবে-ই  কিবোর্ড-এর সাথে যুক্ত থাকে । তাই  wc কিবোর্ড থেকে ইনপুট নেয় ।
 
|-
 
|-
|04:12:00
+
|04:12
 
|এখন যদি আমরা লিখি -
 
|এখন যদি আমরা লিখি -
  
 
"wc space বামকোণী বন্ধনী space test1 dot txt" ।
 
"wc space বামকোণী বন্ধনী space test1 dot txt" ।
 
|-
 
|-
|04:19:00
+
|04:19
 
|তাহলে wc test1 dot txt  ফাইল-এর লাইন, শব্দ এবং অক্ষরের সংখ্যা দেখাবে ।
 
|তাহলে wc test1 dot txt  ফাইল-এর লাইন, শব্দ এবং অক্ষরের সংখ্যা দেখাবে ।
 
|-
 
|-
|04:27:00
+
|04:27
 
|এবার লিখুন ।
 
|এবার লিখুন ।
  
 
"wc space test1 dot txt" ।
 
"wc space test1 dot txt" ।
 
|-
 
|-
|04:34:00
+
|04:34
 
|আমরা একই আউটপুট দেখছি  ।
 
|আমরা একই আউটপুট দেখছি  ।
 
|-
 
|-
|04:37:00
+
|04:37
 
|তাহলে পার্থক্য -টি কোথায় ?
 
|তাহলে পার্থক্য -টি কোথায় ?
 
|-
 
|-
|04:39:00
+
|04:39
 
| "wc space test1 dot txt" লিখলে , কমান্ড-টি  test1dot txt ফাইল-টি খোলে এবং সেটি থেকে পড়ে ।
 
| "wc space test1 dot txt" লিখলে , কমান্ড-টি  test1dot txt ফাইল-টি খোলে এবং সেটি থেকে পড়ে ।
 
|-
 
|-
|04:46:00
+
|04:46
 
|কিন্তু উপরের  কমান্ড-টি  লিখলে , wc খোলার জন্য কোনো ফাইল পায়না ।
 
|কিন্তু উপরের  কমান্ড-টি  লিখলে , wc খোলার জন্য কোনো ফাইল পায়না ।
 
|-
 
|-
|04:53:00
+
|04:53
 
|তাই , এটি standardin থেকে ইনপুট নিতে চেষ্টা করে ।
 
|তাই , এটি standardin থেকে ইনপুট নিতে চেষ্টা করে ।
 
|-
 
|-
|04:57:00
+
|04:57
 
|কিন্তু  আমরা standardin -কে  ফাইল test1dot txt -এর দিকে  পরিচালিত করেছি ।
 
|কিন্তু  আমরা standardin -কে  ফাইল test1dot txt -এর দিকে  পরিচালিত করেছি ।
 
|-
 
|-
|05:01:00
+
|05:01
 
|তাই এই কমান্ড-টি  test1 থেকে পড়ে ।
 
|তাই এই কমান্ড-টি  test1 থেকে পড়ে ।
 
|-
 
|-
|05:04:00
+
|05:04
 
|কিন্তু প্রকৃতপক্ষে , এটা জানে না যে  standardin-e কোথা থেকে তথ্য আসছে ।
 
|কিন্তু প্রকৃতপক্ষে , এটা জানে না যে  standardin-e কোথা থেকে তথ্য আসছে ।
 
|-
 
|-
|05:10:00
+
|05:10
 
|তাহলে আমরা দেখলাম কিভাবে স্ট্যান্ডার্ড ইনপুট পুননির্দেশনা করা যায়  ।
 
|তাহলে আমরা দেখলাম কিভাবে স্ট্যান্ডার্ড ইনপুট পুননির্দেশনা করা যায়  ।
 
|-
 
|-
|05:12:00
+
|05:12
 
|এবার দেখে নেওয়া যাক কিভাবে  স্ট্যান্ডার্ড আউটপুট  এবং  স্ট্যান্ডার্ড এরর  পুননির্দেশনা করা যায় ।
 
|এবার দেখে নেওয়া যাক কিভাবে  স্ট্যান্ডার্ড আউটপুট  এবং  স্ট্যান্ডার্ড এরর  পুননির্দেশনা করা যায় ।
 
|-
 
|-
|05:17:00
+
|05:17
 
|দুটি পদ্ধতিতে  আউটপুট  বা এরর একটি ফাইল-এ পুননির্দেশনা করা যায় ।
 
|দুটি পদ্ধতিতে  আউটপুট  বা এরর একটি ফাইল-এ পুননির্দেশনা করা যায় ।
 
|-       
 
|-       
|05:20:00
+
|05:20
 
|ধরুন, n হল ফাইল descriptor ।
 
|ধরুন, n হল ফাইল descriptor ।
  
 
''n'' একটি ডানকোণী বন্ধনী ফাইল descriptor ''n'' থেকে  একটি  ফাইল-এ আউটপুট redirect করে ।
 
''n'' একটি ডানকোণী বন্ধনী ফাইল descriptor ''n'' থেকে  একটি  ফাইল-এ আউটপুট redirect করে ।
 
|-
 
|-
|05:29:00
+
|05:29
 
|আপনার অবশ্যই সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
 
|আপনার অবশ্যই সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
 
|-
 
|-
|05:32:00
+
|05:32
 
|যদি ফাইলটি  উপস্থিত না থাকে, সেটি  নির্মিত হয় ।
 
|যদি ফাইলটি  উপস্থিত না থাকে, সেটি  নির্মিত হয় ।
 
|-
 
|-
|05:35:00
+
|05:35
 
|যদি সেটির  অস্তিত্ব আগে থেকেই থাকে, তাহলে উপস্থিত বিষয়বস্তু সাধারণত কোন সতর্কত়াবাণী ছাড়াই হারিয়ে যায় ।
 
|যদি সেটির  অস্তিত্ব আগে থেকেই থাকে, তাহলে উপস্থিত বিষয়বস্তু সাধারণত কোন সতর্কত়াবাণী ছাড়াই হারিয়ে যায় ।
 
|-
 
|-
|05:40:00
+
|05:40
 
|' n ' দুটি  ডানকোণী বন্ধনী  ' -ও  ফাইল বর্ণনাকারী ''n'' থেকে একটি  ফাইল-এ  আউটপুট পুননির্দেশনা করে ।
 
|' n ' দুটি  ডানকোণী বন্ধনী  ' -ও  ফাইল বর্ণনাকারী ''n'' থেকে একটি  ফাইল-এ  আউটপুট পুননির্দেশনা করে ।
 
|-
 
|-
|05:47:00
+
|05:47
 
|এক্ষেত্রেও, আপনার সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
 
|এক্ষেত্রেও, আপনার সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
 
|-
 
|-
|05:50:00
+
|05:50
 
|যদি ফাইলটি  উপস্থিত না থাকে , সেটি  নির্মিত হয় ।
 
|যদি ফাইলটি  উপস্থিত না থাকে , সেটি  নির্মিত হয় ।
 
|-
 
|-
|05:52:00
+
|05:52
 
|যদি ফাইলটির  অস্তিত্ব আগে থেকেই থাকে, তাহলে আউটপুট সেই  ফাইল-এর শেষে  যুক্ত হয় ।
 
|যদি ফাইলটির  অস্তিত্ব আগে থেকেই থাকে, তাহলে আউটপুট সেই  ফাইল-এর শেষে  যুক্ত হয় ।
 
|-
 
|-
|05:59:00
+
|05:59
 
|একটি  ডানকোণী  বন্ধনী বা দুটি ডানকোণী বন্ধনীর আগে n হল ফাইল descriptor ।
 
|একটি  ডানকোণী  বন্ধনী বা দুটি ডানকোণী বন্ধনীর আগে n হল ফাইল descriptor ।
 
|-
 
|-
|06:05:00
+
|06:05
 
|এটি বাদ দিলে স্ট্যান্ডার্ড আউপুট অর্থাৎ ফাইল বর্ণনাকারী ১  অনুমান করা  হয় ।
 
|এটি বাদ দিলে স্ট্যান্ডার্ড আউপুট অর্থাৎ ফাইল বর্ণনাকারী ১  অনুমান করা  হয় ।
 
|-
 
|-
|06:10:00
+
|06:10
 
|তাহলে একটি  ডানকোণী বন্ধনী এবং ১ এর পর একটি ডানকোণী বন্ধনী আসলে  একই কাজ করে  ।
 
|তাহলে একটি  ডানকোণী বন্ধনী এবং ১ এর পর একটি ডানকোণী বন্ধনী আসলে  একই কাজ করে  ।
 
|-
 
|-
|06:15:00
+
|06:15
 
|কিন্তু ত্রুটির স্ট্রিম-কে redirect করতে আমাদের ২ এর পর একটি বা  দুটি  ডানকোণী বন্ধনী ব্যবহার করতে হয়  ।  
 
|কিন্তু ত্রুটির স্ট্রিম-কে redirect করতে আমাদের ২ এর পর একটি বা  দুটি  ডানকোণী বন্ধনী ব্যবহার করতে হয়  ।  
 
|-
 
|-
|06:22:00
+
|06:22
 
|আসুন, এটি  দেখা  যাক    ।
 
|আসুন, এটি  দেখা  যাক    ।
 
|-
 
|-
|06:24:00
+
|06:24
 
|শেষ উদাহরণ-এ  আমরা দেখেছি যে ফাইল বা standardin উপর wc কমান্ডের ফলাফল টার্মিনাল উইন্ডোর এ প্রদর্শিত হয়  ।
 
|শেষ উদাহরণ-এ  আমরা দেখেছি যে ফাইল বা standardin উপর wc কমান্ডের ফলাফল টার্মিনাল উইন্ডোর এ প্রদর্শিত হয়  ।
 
|-
 
|-
|06:31:00
+
|06:31
 
|কিন্তু, এটি টার্মিনালে প্রদর্শন করতে  না চাইলে আমরা  কি করবো ?
 
|কিন্তু, এটি টার্মিনালে প্রদর্শন করতে  না চাইলে আমরা  কি করবো ?
 
|-
 
|-
|06:34:00
+
|06:34
 
|ধরুন, আমরা এটি একটি ফাইলে সংরক্ষণ করতে চাই , যাতে পরে এই তথ্য ব্যবহার করা যায় ।
 
|ধরুন, আমরা এটি একটি ফাইলে সংরক্ষণ করতে চাই , যাতে পরে এই তথ্য ব্যবহার করা যায় ।
 
|-
 
|-
|06:38:00
+
|06:38
 
|স্বাভাভিকভাবে  wc standardout -এ  আউটপুট লেখে ।
 
|স্বাভাভিকভাবে  wc standardout -এ  আউটপুট লেখে ।
 
|-
 
|-
|06:42:00
+
|06:42
 
|standardout  টার্মিনাল উইন্ডোর সাথে সংযুক্ত থাকে ।
 
|standardout  টার্মিনাল উইন্ডোর সাথে সংযুক্ত থাকে ।
 
|-
 
|-
|06:45:00
+
|06:45
 
|তাই আমরা টার্মিনাল উইন্ডো-ত়ে  আউটপুট দেখি ।
 
|তাই আমরা টার্মিনাল উইন্ডো-ত়ে  আউটপুট দেখি ।
 
|-
 
|-
|06:48:00
+
|06:48
 
|কিন্তু যদি আমরা standardout একটি ফাইল-এ redirect  করতে পারি, তাহলে wc কমান্ডের ফলাফল সেই  ফাইল-এ  লিখিত হবে ।
 
|কিন্তু যদি আমরা standardout একটি ফাইল-এ redirect  করতে পারি, তাহলে wc কমান্ডের ফলাফল সেই  ফাইল-এ  লিখিত হবে ।
 
|-
 
|-
|06:57:00
+
|06:57
 
|লিখুন  -
 
|লিখুন  -
  
 
"wc space test1 dot txt ডানকোণী বন্ধনী wc_results dot txt" ।
 
"wc space test1 dot txt ডানকোণী বন্ধনী wc_results dot txt" ।
 
|-
 
|-
|07:09:00
+
|07:09
 
|এন্টার টিপুন  ।
 
|এন্টার টিপুন  ।
 
|-
 
|-
|07:11:00
+
|07:11
 
|এখন এটি প্রকৃতপক্ষে হয়েছে কিনা দেখার জন্যে cat কমান্ড-এর দ্বারা wc_results dot txt ফাইল-এর বিষয়বস্তু  দেখা যাক ।
 
|এখন এটি প্রকৃতপক্ষে হয়েছে কিনা দেখার জন্যে cat কমান্ড-এর দ্বারা wc_results dot txt ফাইল-এর বিষয়বস্তু  দেখা যাক ।
 
|-
 
|-
|07:23:00
+
|07:23
 
|হ্যা, এটি হয়েছে ।
 
|হ্যা, এটি হয়েছে ।
 
|-
 
|-
|07:24:00
+
|07:24
 
|ধরুন, ওই  একই ডিরেক্টরি-ত়ে অন্য একটি ফাইল test2 আছে ।
 
|ধরুন, ওই  একই ডিরেক্টরি-ত়ে অন্য একটি ফাইল test2 আছে ।
 
|-
 
|-
|07:30:00
+
|07:30
 
|এখন আবার আমরা test2 ফাইল-ti  নিয়ে  কমান্ডটি চালাব । লিখছি-
 
|এখন আবার আমরা test2 ফাইল-ti  নিয়ে  কমান্ডটি চালাব । লিখছি-
  
 
"wc space test2 dot txt ডানকোণী বন্ধনী wc_results dot txt"
 
"wc space test2 dot txt ডানকোণী বন্ধনী wc_results dot txt"
 
|-
 
|-
|07:44:00
+
|07:44
 
|এক্ষেত্রে,  wc_results -ফাইলের  বিষয়বস্তু overwrite হয়ে যাবে  ।
 
|এক্ষেত্রে,  wc_results -ফাইলের  বিষয়বস্তু overwrite হয়ে যাবে  ।
 
|-
 
|-
|07:48:00
+
|07:48
 
|এটি দেখে নেওয়া যাক ।
 
|এটি দেখে নেওয়া যাক ।
 
|-
 
|-
|07:56:00
+
|07:56
 
|এর পরিবর্তে আমরা লিখতে পারি  "wc space test1 dot txt দুটি ডানকোণী বন্ধনী wc underscore results dot txt"
 
|এর পরিবর্তে আমরা লিখতে পারি  "wc space test1 dot txt দুটি ডানকোণী বন্ধনী wc underscore results dot txt"
 
|-
 
|-
|08:07:00
+
|08:07
 
|নতুন বিষয়বস্তু ফাইল wc underscore results dot txt -এর বর্তমান উপস্থিত বিষয়বস্তু overwrite করে না, সেই ফাইল-এর শেষে যুক্ত হয়ে যায়  ।
 
|নতুন বিষয়বস্তু ফাইল wc underscore results dot txt -এর বর্তমান উপস্থিত বিষয়বস্তু overwrite করে না, সেই ফাইল-এর শেষে যুক্ত হয়ে যায়  ।
 
|-
 
|-
|08:15:00
+
|08:15
 
|এটিও দেখে নেওয়া যাক । এখানে  দুটি  লেখাই  দেখা  যাচ্ছে  ।
 
|এটিও দেখে নেওয়া যাক । এখানে  দুটি  লেখাই  দেখা  যাচ্ছে  ।
 
|-
 
|-
|08:26:00
+
|08:26
 
|স্ট্যান্ডার্ড এরর অনুরূপভাবে redirect  করা যায় ।
 
|স্ট্যান্ডার্ড এরর অনুরূপভাবে redirect  করা যায় ।
 
|-
 
|-
|08:29:00
+
|08:29
 
|শুধু পার্থক্য হল,  এইক্ষেত্রে একটি ডানকোণী বন্ধনী বা দুটি ডানকোণী বন্ধনীর  আগে স্ট্যান্ডার্ড এরর-এর  ফাইল descriptor সংখ্যা উল্লেখ করতে হয় ।
 
|শুধু পার্থক্য হল,  এইক্ষেত্রে একটি ডানকোণী বন্ধনী বা দুটি ডানকোণী বন্ধনীর  আগে স্ট্যান্ডার্ড এরর-এর  ফাইল descriptor সংখ্যা উল্লেখ করতে হয় ।
 
|-
 
|-
|08:38:00
+
|08:38
 
|আমরা জানি aaa নামক কোন ফাইল উপস্থিত  নেই । তাহলে লেখা যাক -
 
|আমরা জানি aaa নামক কোন ফাইল উপস্থিত  নেই । তাহলে লেখা যাক -
  
 
"wc space aaa" ।
 
"wc space aaa" ।
 
|-
 
|-
|08:46:00
+
|08:46
 
|শেল ত্রুটি জানাচ্ছে  যে -  “No such file or directory”।
 
|শেল ত্রুটি জানাচ্ছে  যে -  “No such file or directory”।
 
|-
 
|-
|08:50:00
+
|08:50
 
|ধরুন, আমরা স্ক্রিন-এ এই  বার্তা দেখতে চাই না । তারজন্য, সেগুলি অন্য ফাইল-এ redirect  করতে হবে ।
 
|ধরুন, আমরা স্ক্রিন-এ এই  বার্তা দেখতে চাই না । তারজন্য, সেগুলি অন্য ফাইল-এ redirect  করতে হবে ।
 
|-
 
|-
|08:55:00
+
|08:55
 
|লেখা  যাক  -
 
|লেখা  যাক  -
  
 
"wc space aaa space 2 ডানকোণী বন্ধনী errorlog dot txt" ।
 
"wc space aaa space 2 ডানকোণী বন্ধনী errorlog dot txt" ।
 
|-
 
|-
|09:06:00
+
|09:06
 
|এখন ত্রুটি-গুলি  টার্মিনালে প্রদর্শিত হচ্ছে  না , বরং ফাইল errorlog dot txt -ত়ে লিখিত হয়ে  গেছে  ।
 
|এখন ত্রুটি-গুলি  টার্মিনালে প্রদর্শিত হচ্ছে  না , বরং ফাইল errorlog dot txt -ত়ে লিখিত হয়ে  গেছে  ।
 
|-
 
|-
|09:12:00
+
|09:12
 
|আমরা "cat space errorlog dot txt" কমান্ড-এর মাধ্যমে এটি দেখতে পারি ।
 
|আমরা "cat space errorlog dot txt" কমান্ড-এর মাধ্যমে এটি দেখতে পারি ।
 
 
 
|-
 
|-
|09:22:00
+
|09:22
 
|ধরুন,  আমি "cat space bbb space 2 ডানকোণী বন্ধনী errorlog dot txt"  কমান্ড ব্যবহার করে কিছু ক্রুটি করেছি ।
 
|ধরুন,  আমি "cat space bbb space 2 ডানকোণী বন্ধনী errorlog dot txt"  কমান্ড ব্যবহার করে কিছু ক্রুটি করেছি ।
 
|-
 
|-
|09:34:00
+
|09:34
 
|এখন  পূর্ববর্তী ক্রুটি overwrite হয়ে যাবে এবং নতুন ক্রুটি দেখা যাবে ।
 
|এখন  পূর্ববর্তী ক্রুটি overwrite হয়ে যাবে এবং নতুন ক্রুটি দেখা যাবে ।
 
|-
 
|-
|09:39:00
+
|09:39
 
|দেখুন "cat space errorlog dot txt"
 
|দেখুন "cat space errorlog dot txt"
 
|-
 
|-
|09:46:00
+
|09:46
 
|কিন্তু সবকটি error-এর  তালিকা দেখতে চাইলে আমরা কি করবো ?
 
|কিন্তু সবকটি error-এর  তালিকা দেখতে চাইলে আমরা কি করবো ?
  
Line 364: Line 364:
 
"wc space aaa space 2 দুটি ডানকোণী বন্ধনী errorlog dot txt" ।
 
"wc space aaa space 2 দুটি ডানকোণী বন্ধনী errorlog dot txt" ।
 
|-
 
|-
|09:58:00
+
|09:58
 
|cat কমান্ড ব্যবহার করে এটি পরীক্ষা করা যাক ।
 
|cat কমান্ড ব্যবহার করে এটি পরীক্ষা করা যাক ।
 
|-
 
|-
|10:06:00
+
|10:06
 
|তাহলে আমরা দেখলাম কিভাবে তিনটি  স্ট্রিম  -স্ট্যান্ডার্ড আউট, স্ট্যান্ডার্ড in  ও  স্ট্যান্ডার্ড এরর-কে আলাদাভাবে redirect  এবং ব্যবহার  করা যায় ।  কিন্তু এই তিনটি স্ট্রিম -কে  একসাথে ব্যবহার অর্থাৎ বিভিন্ন স্ট্রিম-গুলি যুক্ত কতে পারলে, redirection আসল ক্ষমতা বোঝা যায় ।
 
|তাহলে আমরা দেখলাম কিভাবে তিনটি  স্ট্রিম  -স্ট্যান্ডার্ড আউট, স্ট্যান্ডার্ড in  ও  স্ট্যান্ডার্ড এরর-কে আলাদাভাবে redirect  এবং ব্যবহার  করা যায় ।  কিন্তু এই তিনটি স্ট্রিম -কে  একসাথে ব্যবহার অর্থাৎ বিভিন্ন স্ট্রিম-গুলি যুক্ত কতে পারলে, redirection আসল ক্ষমতা বোঝা যায় ।
 
|-
 
|-
|10:20:00
+
|10:20
 
|একে  pipelining বলা হয় ।
 
|একে  pipelining বলা হয় ।
 
|-
 
|-
|10:22:00
+
|10:22
 
|পাইপ কমান্ড-এর শৃঙ্খল  তৈরী করে  ।
 
|পাইপ কমান্ড-এর শৃঙ্খল  তৈরী করে  ।
 
|-
 
|-
|10:25:00
+
|10:25
 
|পাইপ  একটি  কমান্ডের আউটপুট-এর সাথে পরবর্তী কমান্ডের ইনপুট যুক্ত  করে ।
 
|পাইপ  একটি  কমান্ডের আউটপুট-এর সাথে পরবর্তী কমান্ডের ইনপুট যুক্ত  করে ।
 
|-
 
|-
|10:30:00
+
|10:30
 
|এটি লেখার নিয়ম  হল -
 
|এটি লেখার নিয়ম  হল -
  
 
command1 উল্লম্ব দাঁড়ি  command2 hyphen option উল্লম্ব দাঁড়ি command3 hyphen option1 hyphen option2 উল্লম্ব দাঁড়ি command4 ।
 
command1 উল্লম্ব দাঁড়ি  command2 hyphen option উল্লম্ব দাঁড়ি command3 hyphen option1 hyphen option2 উল্লম্ব দাঁড়ি command4 ।
 
|-
 
|-
|10:46:00
+
|10:46
 
|ধরুন, আমরা বর্তমান ডিরেক্টরির মধ্যে উপস্থিত ফাইল ও ডিরেক্টরির  মোট সংখ্যা জানতে চাই ।
 
|ধরুন, আমরা বর্তমান ডিরেক্টরির মধ্যে উপস্থিত ফাইল ও ডিরেক্টরির  মোট সংখ্যা জানতে চাই ।
 
|-   
 
|-   
|10:51:00
+
|10:51
 
|তাহলে আমরা কি করবো ? আমরা জানি
 
|তাহলে আমরা কি করবো ? আমরা জানি
  
 
"ls space minus l"  বর্তমান ডিরেক্টরি-র  সব ফাইল এবং সাব-ডিরেক্টরির  তালিকা দেয় ।
 
"ls space minus l"  বর্তমান ডিরেক্টরি-র  সব ফাইল এবং সাব-ডিরেক্টরির  তালিকা দেয় ।
 
|-
 
|-
|10:58:00
+
|10:58
 
|আমরা আউটপুট-টিকে  একটি ফাইলে redirect  করতে পারি -
 
|আমরা আউটপুট-টিকে  একটি ফাইলে redirect  করতে পারি -
  
 
"ls space minus l ডানকোণী বন্ধনী files dot txt" ।
 
"ls space minus l ডানকোণী বন্ধনী files dot txt" ।
 
|-
 
|-
|11:08:00
+
|11:08
 
|"cat space files dot txt"  ।
 
|"cat space files dot txt"  ।
 
|-
 
|-
|11:14:00
+
|11:14
 
|এখানে,  প্রতিটি লাইন একটি ফাইল অথবা ডিরেক্টরির নাম ।
 
|এখানে,  প্রতিটি লাইন একটি ফাইল অথবা ডিরেক্টরির নাম ।
 
|-
 
|-
|11:17:00
+
|11:17
 
|যদি আমরা এই ফাইলের  মোট লাইন সংখ্যা জানতে চাই, তাহলে  আমরা files dot txt ফাইল-টিকে ব্যবহার করতে পারি  ।
 
|যদি আমরা এই ফাইলের  মোট লাইন সংখ্যা জানতে চাই, তাহলে  আমরা files dot txt ফাইল-টিকে ব্যবহার করতে পারি  ।
 
|-
 
|-
|11:24:00
+
|11:24
 
|এটি এই কমান্ড-এর মাধ্যমে করা যায়-  "wc space minus  l files dot txt" ।
 
|এটি এই কমান্ড-এর মাধ্যমে করা যায়-  "wc space minus  l files dot txt" ।
 
|-
 
|-
|11:32:00
+
|11:32
 
|এটি আমাদের উদ্দেশ্য সাধন করলেও  এর কিছু সমস্যা আছে ।
 
|এটি আমাদের উদ্দেশ্য সাধন করলেও  এর কিছু সমস্যা আছে ।
 
|-
 
|-
|11:35:00
+
|11:35
 
|প্রথমত, একটি অন্তর্বর্তী ফাইল files dot txt প্রয়োজন হয় ।
 
|প্রথমত, একটি অন্তর্বর্তী ফাইল files dot txt প্রয়োজন হয় ।
 
|-
 
|-
|11:40:00
+
|11:40
 
|যদি প্রথম কমান্ড অনেক তথ্য উত্পাদন করে, এটা অকারণে ডিস্ক মেমরি নষ্ট করতে পারে  ।
 
|যদি প্রথম কমান্ড অনেক তথ্য উত্পাদন করে, এটা অকারণে ডিস্ক মেমরি নষ্ট করতে পারে  ।
 
|-
 
|-
|11:46:00
+
|11:46
 
|এছাড়াও য  বিভিন্ন কমান্ড-এর শৃঙ্খল তৈরী করতে চাইলে  এই পদ্ধতিটি  সময়সাপেক্ষ  ।
 
|এছাড়াও য  বিভিন্ন কমান্ড-এর শৃঙ্খল তৈরী করতে চাইলে  এই পদ্ধতিটি  সময়সাপেক্ষ  ।
 
|-
 
|-
|11:50:00
+
|11:50
 
|আমরা এটি  অনেক সহজেই  পাইপ ব্যবহার করে কাজটি করতে পারি । লেখা যাক -
 
|আমরা এটি  অনেক সহজেই  পাইপ ব্যবহার করে কাজটি করতে পারি । লেখা যাক -
  
 
"ls space minus l উল্লম্ব দাঁড়ি wc space minus l" ।
 
"ls space minus l উল্লম্ব দাঁড়ি wc space minus l" ।
 
|-
 
|-
|12:01:00
+
|12:01
 
|এখন  আমরা অনেক বেশি স্বাচ্ছন্দ্য-এর  সঙ্গে একই ফলাফল পাচ্ছি  ।
 
|এখন  আমরা অনেক বেশি স্বাচ্ছন্দ্য-এর  সঙ্গে একই ফলাফল পাচ্ছি  ।
 
|-
 
|-
|12:06:00
+
|12:06
 
|ls কমান্ডের আউটপুট wc কমান্ডের ইনপুট হিসেবে ব্যবহৃত হয়  ।
 
|ls কমান্ডের আউটপুট wc কমান্ডের ইনপুট হিসেবে ব্যবহৃত হয়  ।
 
|-
 
|-
|12:10:00
+
|12:10
 
|এমনকি আমরা পাইপ ব্যবহার করে  কমান্ড-এর আরো লম্বা শৃঙ্খল তৈরী করতে পারি ।
 
|এমনকি আমরা পাইপ ব্যবহার করে  কমান্ড-এর আরো লম্বা শৃঙ্খল তৈরী করতে পারি ।
 
|-
 
|-
|12:15:00
+
|12:15
 
|পাইপ-এর একটি সাধারণ ব্যবহার হল বিভিন্ন পৃষ্ঠায় প্রদর্শিত লেখা পড়া ।
 
|পাইপ-এর একটি সাধারণ ব্যবহার হল বিভিন্ন পৃষ্ঠায় প্রদর্শিত লেখা পড়া ।
 
|-
 
|-
|12:19:00
+
|12:19
 
|লিখুন  "cd space slash usr slash bin"।
 
|লিখুন  "cd space slash usr slash bin"।
 
|-
 
|-
|12:24:00
+
|12:24
 
|তাহলে আমরা এখন bin ডিরেক্টরী-ত়ে আছি ।
 
|তাহলে আমরা এখন bin ডিরেক্টরী-ত়ে আছি ।
 
|-
 
|-
|12:28:00
+
|12:28
 
|এখান  "ls minus l" কমান্ড-টি রান করুন ।
 
|এখান  "ls minus l" কমান্ড-টি রান করুন ।
 
|-
 
|-
|12:31:00
+
|12:31
 
|আমরা আউটপুট সঠিকভাবে দেখতে পাচ্ছিনা । কিন্তু  more পাইপ-এর সাথে যুক্ত করে কমান্ড-টি ব্যবহার করলে, এটি সঠিকভাবে দেখা যাবে ।  
 
|আমরা আউটপুট সঠিকভাবে দেখতে পাচ্ছিনা । কিন্তু  more পাইপ-এর সাথে যুক্ত করে কমান্ড-টি ব্যবহার করলে, এটি সঠিকভাবে দেখা যাবে ।  
 
|-
 
|-
|12:37:00
+
|12:37
 
|এই লিস্ট-টি পুরো দেখতে এন্টার টিপুন ।
 
|এই লিস্ট-টি পুরো দেখতে এন্টার টিপুন ।
 
|-
 
|-
|12:41:00
+
|12:41
 
|বেরিয়ে আসতে q টিপুন ।
 
|বেরিয়ে আসতে q টিপুন ।
 
|-   
 
|-   
|12:45:00
+
|12:45
 
|এখানে  কিছু কমান্ড আলোচিত হল যেগুলি আমাদের ফাইল নিয়ে কাজ করতে সাহায্য করে ।
 
|এখানে  কিছু কমান্ড আলোচিত হল যেগুলি আমাদের ফাইল নিয়ে কাজ করতে সাহায্য করে ।
 
|-
 
|-
|12:48:00
+
|12:48
 
|এইপ্রকার আরো অনেক  কমান্ড আছে ।
 
|এইপ্রকার আরো অনেক  কমান্ড আছে ।
 
|-
 
|-
|12:50:00
+
|12:50
 
|আলোচিত  প্রত্যেকটি কমান্ড-এর অনেকগুলি অপশন আছে  ।
 
|আলোচিত  প্রত্যেকটি কমান্ড-এর অনেকগুলি অপশন আছে  ।
 
|-
 
|-
|12:54:00
+
|12:54
 
|'man' কমান্ড-এর সাহায্যে সেগুলির  সম্পর্কে আরো বিস্তারিত ভাবে জানুন ।
 
|'man' কমান্ড-এর সাহায্যে সেগুলির  সম্পর্কে আরো বিস্তারিত ভাবে জানুন ।
 
|-
 
|-
|12:58:00
+
|12:58
 
|কমান্ড শেখার সবথেকে সেরা উপায় হল সেগুলিকে  বারবার  ব্যবহার করা  ।
 
|কমান্ড শেখার সবথেকে সেরা উপায় হল সেগুলিকে  বারবার  ব্যবহার করা  ।
 
|-
 
|-
|13:04:00    
+
|13:04   
 
|এখানেই এই টিউটোরিয়াল্-এর সমাপ্তি হল ।
 
|এখানেই এই টিউটোরিয়াল্-এর সমাপ্তি হল ।
 
|-
 
|-
|13:07:00
+
|13:07
 
|স্পোকেন্ টিউটোরিয়াল্ Talk to a Teacher প্রকল্পের অংশবিশেষ যা ICT এর  National Mission on Education দ্বারা সমর্থিত  ।
 
|স্পোকেন্ টিউটোরিয়াল্ Talk to a Teacher প্রকল্পের অংশবিশেষ যা ICT এর  National Mission on Education দ্বারা সমর্থিত  ।
 
|-
 
|-
 
|-
 
|-
|13:19:00
+
|13:19
 
|আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ এবং রেকর্ড করেছি । শুভবিদায় ।
 
|আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ এবং রেকর্ড করেছি । শুভবিদায় ।
  
 
|}
 
|}

Revision as of 17:04, 7 August 2014

Time Narration
00:00 Redirection এবং Pipes সংক্রান্ত এই কথ্য টিউটোরিয়ালটিতে আপনাদের স্বাগত জানাচ্ছি ।
00:07 আমি উবুন্টু ১০.০৪ ব্যবহার করছি ।
00:09 আমি ধরে নিচ্ছি, লিনাক্স অপারেটিং সিস্টেম এবং মৌলিক নির্দেশাবলী সম্পর্কে আপনার কিছু ধারণা আছে ।
00:16 সেই সংক্রান্ত মৌখিক টিউটোরিয়াল এই ওয়েবসাইট-টিতে প্রাপ্তিসাধ্য ।
00:22 মনে রাখবেন যে লিনাক্স case sensitive ।
00:25 অন্যথায় উল্লেখ করা না থাকলে এই টিউটোরিয়ালটিতে ব্যবহৃত সমস্ত র্নিদেশাবলী ছোট হাতের অক্ষরে আছে ।
00:32 লিনাক্স-এ অধিকাংশ কাজ-ই টার্মিনাল-এর মাধ্যমে হয় ।
00:35 যখন আমরা একটি কমান্ড চালাতে চাই, আমরা কিবোর্ডের মাধ্যমে সেটি লিখি ।
00:39 ধরুন, আমরা তারিখ এবং সময় দেখতে চাইছি ।
00:41 কিবোর্ড-এর মাধ্যমে "date" লিখুন এবং এন্টার টিপুন ।
00:46 সাধারণত আমরা কিবোর্ড-এর মাধ্যমে ইনপুট দিয়ে থাকি ।
00:48 অনুরূপভাবে, কমান্ডের আউটপুট, টার্মিনাল উইন্ডোত়ে প্রদর্শিত হয় ।
00:56 এছাড়াও কোনো কমান্ড চানালোর সময় কিছু ত্রুটি ঘটতে পারে ।
00:59 উদাহরস্বরূপ, লিখুন "cat space aaa" । এন্টার টিপুন ।
01:05 aaa নামক কোনো ফাইলের অস্তিত্ব নেই ।
01:08 সেই ত্রুটি- সংক্রান্ত বার্তা এখানে দেখা যাচ্ছে ।
01:10 এখন এই ত্রুটি-টিও টার্মিনাল উইন্ডোর উপর দেখা যাচ্ছে ।
01:20 কমান্ড সংক্রান্ত তিনটি বিশেষ কর্ম হল ইনপুট নেওয়া, আউটপুট দেখানো এবং error বা ত্রুটি রিপোর্ট করা ।
01:24 Redirection শেখার পূর্বে আমাদের দুটি গুরুত্বপূর্ণ ধারণা সম্পর্কে জানা উচিত। সেগুলি হল - স্ট্রিম এবং file descriptor ।
01:31 লিনাক্স শেল যেমন Bash, অক্ষরের স্ট্রিম-এর মাধ্যমে ইনপুট গ্রহণ করে ও আউটপুট পাঠায় ।
01:37 কোনো অক্ষর তার আগের এবং পরের অক্ষরের উপর নির্ভর করে না ।
01:41 স্ট্রিম-গুলি ফাইল IO পদ্ধতির দ্বারা ব্যবহার করা হয় ।
01:44 অক্ষরের স্ট্রিম-টি কোনো একটি ফাইল বা কীবোর্ড বা উইন্ডো ইত্যাদি কোথা থেকে আসছে বা কোথায় যাচ্ছে, ত়া কোনো মূল্য রাখে না ।
01:51 লিনাক্স-এ প্রত্যেক খোলা ফাইল-এর সঙ্গে একটি পূর্ণসংখ্যা সংখ্যা যুক্ত থাকে ।
01:57 এটিকে file descriptor বলা হয় ।
02:05 লিনাক্স শেল তিনটি স্ট্যান্ডার্ড I/O স্ট্রিম ব্যবহার করে ।
02:08 প্রতিটি একটি সুনির্দিষ্ট ফাইল descriptor-এর সাথে যুক্ত থাকে ।
02:12 stdin হল স্ট্যান্ডার্ড ইনপুট স্ট্রিম ।
02:15 এটি কমান্ড-এ ইনপুট দেয় ।
02:17 এর ফাইল descriptor মান 0 ।
02:19 stdout হল স্ট্যান্ডার্ড আউটপুট স্ট্রিম ।
02:22 এটি কমান্ড-এর আউটপুট দেখায় । এর ফাইল বর্ণনাকারীর মান ১ ।
02:26 stderr হল স্ট্যান্ডার্ড এরর স্ট্রিম । এটি কমান্ড-এর ত্রুটি-গুলি প্রদর্শন করে । এর ফাইল descriptor হল ২ ।
02:36 ইনপুট স্ট্রিম প্রোগ্রামের ইনপুট প্রদান করে ।
02:40 সাধারনতঃ এটি টার্মিনাল keystrokes থেকে ইনপুট নেয় ।
02:44 আউটপুট স্ট্রিম সাধারনতঃ টার্মিনালে অক্ষর প্রিন্ট করে ।
02:47 আগে টার্মিনাল ছিল ASCII typewriter বা display terminal ।
02:52 কিন্তু এখন এটি গ্রাফিকাল ডেস্কটপ-এর উপর একটি টেক্সট উইন্ডো ।
02:56 আমরা দেখেছি যে ৩ টি স্ট্রিমই স্বাভাবিকভাবে কোনো ফাইল-এর সাথে সংযুক্ত থাকে ।
03:01 কিন্তু লিনাক্সে আমরা এটির পরিবর্তন করতে পারি ।
03:04 আমরা এই ৩-টি স্ট্রিম অন্যান্য ফাইলের সাথে সংযুক্ত করতে পারি ।
03:07 এই প্রক্রিয়া-টিকে redirection বা পুনর্নির্দেশনা বলা হয় ।
03:09 এখন দেখা যাক কিভাবে এই ৩ স্ট্রিম-এ পুনর্নির্দেশনা করা যায় ।
03:14 প্রথমে দেখা যাক স্ট্যান্ডার্ড ইনপুট কিভাবে পুনঃনির্দেশিত করা যায় ।
03:17 আমরা একটি ফাইল থেকে standardin, <(বামকোণী বন্ধনী) অপারেটর ব্যবহার করে পুনঃনির্দেশিত করতে পারি ।
03:22 আমরা জানি যে একটি ফাইলের লাইন, শব্দ এবং অক্ষরের সংখ্যা জানতে wc কমান্ডের ব্যবহার করা হয় ।
03:28 টার্মিনাল উইন্ডো-ত়ে wc লিখুন ।
03:31 এন্টার টিপুন ।
03:32 কারসর-টি দপদপ করছে অর্থাৎ আমাদের কিবোর্ড-এর মাধ্যমে ইনপুট দিতে হবে ।
03:37 কিছু লেখা যাক "This tutorial is very important" ।
03:46 এন্টার টিপুন ।
03:48 এবার ctrl ও d কী একসাথে টিপুন ।
03:52 এখন যে লাইনগুলি আমরা লিখেছি, তার উপর কমান্ড-টি কাজ করেছে ।
03:55 এই কমান্ড-টি টার্মিনাল-এ আউটপুট দেখাছে ।
03:57 এখানে wc কমান্ড-এর পর কোনো ফাইল উল্লেখ করা হয়নি ।
04:01 তাই কমান্ড-টি স্ট্যান্ডার্ড ইনপুট স্ট্রিম থেকে ইনপুট নিয়েছে ।
04:04 স্ট্যান্ডার্ড ইনপুট স্ট্রিম স্বাভাবিকভাবে-ই কিবোর্ড-এর সাথে যুক্ত থাকে । তাই wc কিবোর্ড থেকে ইনপুট নেয় ।
04:12 এখন যদি আমরা লিখি -

"wc space বামকোণী বন্ধনী space test1 dot txt" ।

04:19 তাহলে wc test1 dot txt ফাইল-এর লাইন, শব্দ এবং অক্ষরের সংখ্যা দেখাবে ।
04:27 এবার লিখুন ।

"wc space test1 dot txt" ।

04:34 আমরা একই আউটপুট দেখছি ।
04:37 তাহলে পার্থক্য -টি কোথায় ?
04:39 "wc space test1 dot txt" লিখলে , কমান্ড-টি test1dot txt ফাইল-টি খোলে এবং সেটি থেকে পড়ে ।
04:46 কিন্তু উপরের কমান্ড-টি লিখলে , wc খোলার জন্য কোনো ফাইল পায়না ।
04:53 তাই , এটি standardin থেকে ইনপুট নিতে চেষ্টা করে ।
04:57 কিন্তু আমরা standardin -কে ফাইল test1dot txt -এর দিকে পরিচালিত করেছি ।
05:01 তাই এই কমান্ড-টি test1 থেকে পড়ে ।
05:04 কিন্তু প্রকৃতপক্ষে , এটা জানে না যে standardin-e কোথা থেকে তথ্য আসছে ।
05:10 তাহলে আমরা দেখলাম কিভাবে স্ট্যান্ডার্ড ইনপুট পুননির্দেশনা করা যায় ।
05:12 এবার দেখে নেওয়া যাক কিভাবে স্ট্যান্ডার্ড আউটপুট এবং স্ট্যান্ডার্ড এরর পুননির্দেশনা করা যায় ।
05:17 দুটি পদ্ধতিতে আউটপুট বা এরর একটি ফাইল-এ পুননির্দেশনা করা যায় ।
05:20 ধরুন, n হল ফাইল descriptor ।

n একটি ডানকোণী বন্ধনী ফাইল descriptor n থেকে একটি ফাইল-এ আউটপুট redirect করে ।

05:29 আপনার অবশ্যই সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
05:32 যদি ফাইলটি উপস্থিত না থাকে, সেটি নির্মিত হয় ।
05:35 যদি সেটির অস্তিত্ব আগে থেকেই থাকে, তাহলে উপস্থিত বিষয়বস্তু সাধারণত কোন সতর্কত়াবাণী ছাড়াই হারিয়ে যায় ।
05:40 ' n ' দুটি ডানকোণী বন্ধনী ' -ও ফাইল বর্ণনাকারী n থেকে একটি ফাইল-এ আউটপুট পুননির্দেশনা করে ।
05:47 এক্ষেত্রেও, আপনার সেই ফাইল-এ লেখার অধিকার থাকতে হবে ।
05:50 যদি ফাইলটি উপস্থিত না থাকে , সেটি নির্মিত হয় ।
05:52 যদি ফাইলটির অস্তিত্ব আগে থেকেই থাকে, তাহলে আউটপুট সেই ফাইল-এর শেষে যুক্ত হয় ।
05:59 একটি ডানকোণী বন্ধনী বা দুটি ডানকোণী বন্ধনীর আগে n হল ফাইল descriptor ।
06:05 এটি বাদ দিলে স্ট্যান্ডার্ড আউপুট অর্থাৎ ফাইল বর্ণনাকারী ১ অনুমান করা হয় ।
06:10 তাহলে একটি ডানকোণী বন্ধনী এবং ১ এর পর একটি ডানকোণী বন্ধনী আসলে একই কাজ করে ।
06:15 কিন্তু ত্রুটির স্ট্রিম-কে redirect করতে আমাদের ২ এর পর একটি বা দুটি ডানকোণী বন্ধনী ব্যবহার করতে হয় ।
06:22 আসুন, এটি দেখা যাক ।
06:24 শেষ উদাহরণ-এ আমরা দেখেছি যে ফাইল বা standardin উপর wc কমান্ডের ফলাফল টার্মিনাল উইন্ডোর এ প্রদর্শিত হয় ।
06:31 কিন্তু, এটি টার্মিনালে প্রদর্শন করতে না চাইলে আমরা কি করবো ?
06:34 ধরুন, আমরা এটি একটি ফাইলে সংরক্ষণ করতে চাই , যাতে পরে এই তথ্য ব্যবহার করা যায় ।
06:38 স্বাভাভিকভাবে wc standardout -এ আউটপুট লেখে ।
06:42 standardout টার্মিনাল উইন্ডোর সাথে সংযুক্ত থাকে ।
06:45 তাই আমরা টার্মিনাল উইন্ডো-ত়ে আউটপুট দেখি ।
06:48 কিন্তু যদি আমরা standardout একটি ফাইল-এ redirect করতে পারি, তাহলে wc কমান্ডের ফলাফল সেই ফাইল-এ লিখিত হবে ।
06:57 লিখুন -

"wc space test1 dot txt ডানকোণী বন্ধনী wc_results dot txt" ।

07:09 এন্টার টিপুন ।
07:11 এখন এটি প্রকৃতপক্ষে হয়েছে কিনা দেখার জন্যে cat কমান্ড-এর দ্বারা wc_results dot txt ফাইল-এর বিষয়বস্তু দেখা যাক ।
07:23 হ্যা, এটি হয়েছে ।
07:24 ধরুন, ওই একই ডিরেক্টরি-ত়ে অন্য একটি ফাইল test2 আছে ।
07:30 এখন আবার আমরা test2 ফাইল-ti নিয়ে কমান্ডটি চালাব । লিখছি-

"wc space test2 dot txt ডানকোণী বন্ধনী wc_results dot txt"

07:44 এক্ষেত্রে, wc_results -ফাইলের বিষয়বস্তু overwrite হয়ে যাবে ।
07:48 এটি দেখে নেওয়া যাক ।
07:56 এর পরিবর্তে আমরা লিখতে পারি "wc space test1 dot txt দুটি ডানকোণী বন্ধনী wc underscore results dot txt"
08:07 নতুন বিষয়বস্তু ফাইল wc underscore results dot txt -এর বর্তমান উপস্থিত বিষয়বস্তু overwrite করে না, সেই ফাইল-এর শেষে যুক্ত হয়ে যায় ।
08:15 এটিও দেখে নেওয়া যাক । এখানে দুটি লেখাই দেখা যাচ্ছে ।
08:26 স্ট্যান্ডার্ড এরর অনুরূপভাবে redirect করা যায় ।
08:29 শুধু পার্থক্য হল, এইক্ষেত্রে একটি ডানকোণী বন্ধনী বা দুটি ডানকোণী বন্ধনীর আগে স্ট্যান্ডার্ড এরর-এর ফাইল descriptor সংখ্যা উল্লেখ করতে হয় ।
08:38 আমরা জানি aaa নামক কোন ফাইল উপস্থিত নেই । তাহলে লেখা যাক -

"wc space aaa" ।

08:46 শেল ত্রুটি জানাচ্ছে যে - “No such file or directory”।
08:50 ধরুন, আমরা স্ক্রিন-এ এই বার্তা দেখতে চাই না । তারজন্য, সেগুলি অন্য ফাইল-এ redirect করতে হবে ।
08:55 লেখা যাক -

"wc space aaa space 2 ডানকোণী বন্ধনী errorlog dot txt" ।

09:06 এখন ত্রুটি-গুলি টার্মিনালে প্রদর্শিত হচ্ছে না , বরং ফাইল errorlog dot txt -ত়ে লিখিত হয়ে গেছে ।
09:12 আমরা "cat space errorlog dot txt" কমান্ড-এর মাধ্যমে এটি দেখতে পারি ।

09:22 ধরুন, আমি "cat space bbb space 2 ডানকোণী বন্ধনী errorlog dot txt" কমান্ড ব্যবহার করে কিছু ক্রুটি করেছি ।
09:34 এখন পূর্ববর্তী ক্রুটি overwrite হয়ে যাবে এবং নতুন ক্রুটি দেখা যাবে ।
09:39 দেখুন "cat space errorlog dot txt"
09:46 কিন্তু সবকটি error-এর তালিকা দেখতে চাইলে আমরা কি করবো ?

সেক্ষেত্রে, আমরা এই কমান্ড-টি চালাব -

"wc space aaa space 2 দুটি ডানকোণী বন্ধনী errorlog dot txt" ।

09:58 cat কমান্ড ব্যবহার করে এটি পরীক্ষা করা যাক ।
10:06 তাহলে আমরা দেখলাম কিভাবে তিনটি স্ট্রিম -স্ট্যান্ডার্ড আউট, স্ট্যান্ডার্ড in ও স্ট্যান্ডার্ড এরর-কে আলাদাভাবে redirect এবং ব্যবহার করা যায় । কিন্তু এই তিনটি স্ট্রিম -কে একসাথে ব্যবহার অর্থাৎ বিভিন্ন স্ট্রিম-গুলি যুক্ত কতে পারলে, redirection আসল ক্ষমতা বোঝা যায় ।
10:20 একে pipelining বলা হয় ।
10:22 পাইপ কমান্ড-এর শৃঙ্খল তৈরী করে ।
10:25 পাইপ একটি কমান্ডের আউটপুট-এর সাথে পরবর্তী কমান্ডের ইনপুট যুক্ত করে ।
10:30 এটি লেখার নিয়ম হল -

command1 উল্লম্ব দাঁড়ি command2 hyphen option উল্লম্ব দাঁড়ি command3 hyphen option1 hyphen option2 উল্লম্ব দাঁড়ি command4 ।

10:46 ধরুন, আমরা বর্তমান ডিরেক্টরির মধ্যে উপস্থিত ফাইল ও ডিরেক্টরির মোট সংখ্যা জানতে চাই ।
10:51 তাহলে আমরা কি করবো ? আমরা জানি

"ls space minus l" বর্তমান ডিরেক্টরি-র সব ফাইল এবং সাব-ডিরেক্টরির তালিকা দেয় ।

10:58 আমরা আউটপুট-টিকে একটি ফাইলে redirect করতে পারি -

"ls space minus l ডানকোণী বন্ধনী files dot txt" ।

11:08 "cat space files dot txt" ।
11:14 এখানে, প্রতিটি লাইন একটি ফাইল অথবা ডিরেক্টরির নাম ।
11:17 যদি আমরা এই ফাইলের মোট লাইন সংখ্যা জানতে চাই, তাহলে আমরা files dot txt ফাইল-টিকে ব্যবহার করতে পারি ।
11:24 এটি এই কমান্ড-এর মাধ্যমে করা যায়- "wc space minus l files dot txt" ।
11:32 এটি আমাদের উদ্দেশ্য সাধন করলেও এর কিছু সমস্যা আছে ।
11:35 প্রথমত, একটি অন্তর্বর্তী ফাইল files dot txt প্রয়োজন হয় ।
11:40 যদি প্রথম কমান্ড অনেক তথ্য উত্পাদন করে, এটা অকারণে ডিস্ক মেমরি নষ্ট করতে পারে ।
11:46 এছাড়াও য বিভিন্ন কমান্ড-এর শৃঙ্খল তৈরী করতে চাইলে এই পদ্ধতিটি সময়সাপেক্ষ ।
11:50 আমরা এটি অনেক সহজেই পাইপ ব্যবহার করে কাজটি করতে পারি । লেখা যাক -

"ls space minus l উল্লম্ব দাঁড়ি wc space minus l" ।

12:01 এখন আমরা অনেক বেশি স্বাচ্ছন্দ্য-এর সঙ্গে একই ফলাফল পাচ্ছি ।
12:06 ls কমান্ডের আউটপুট wc কমান্ডের ইনপুট হিসেবে ব্যবহৃত হয় ।
12:10 এমনকি আমরা পাইপ ব্যবহার করে কমান্ড-এর আরো লম্বা শৃঙ্খল তৈরী করতে পারি ।
12:15 পাইপ-এর একটি সাধারণ ব্যবহার হল বিভিন্ন পৃষ্ঠায় প্রদর্শিত লেখা পড়া ।
12:19 লিখুন "cd space slash usr slash bin"।
12:24 তাহলে আমরা এখন bin ডিরেক্টরী-ত়ে আছি ।
12:28 এখান "ls minus l" কমান্ড-টি রান করুন ।
12:31 আমরা আউটপুট সঠিকভাবে দেখতে পাচ্ছিনা । কিন্তু more পাইপ-এর সাথে যুক্ত করে কমান্ড-টি ব্যবহার করলে, এটি সঠিকভাবে দেখা যাবে ।
12:37 এই লিস্ট-টি পুরো দেখতে এন্টার টিপুন ।
12:41 বেরিয়ে আসতে q টিপুন ।
12:45 এখানে কিছু কমান্ড আলোচিত হল যেগুলি আমাদের ফাইল নিয়ে কাজ করতে সাহায্য করে ।
12:48 এইপ্রকার আরো অনেক কমান্ড আছে ।
12:50 আলোচিত প্রত্যেকটি কমান্ড-এর অনেকগুলি অপশন আছে ।
12:54 'man' কমান্ড-এর সাহায্যে সেগুলির সম্পর্কে আরো বিস্তারিত ভাবে জানুন ।
12:58 কমান্ড শেখার সবথেকে সেরা উপায় হল সেগুলিকে বারবার ব্যবহার করা ।
13:04 এখানেই এই টিউটোরিয়াল্-এর সমাপ্তি হল ।
13:07 স্পোকেন্ টিউটোরিয়াল্ Talk to a Teacher প্রকল্পের অংশবিশেষ যা ICT এর National Mission on Education দ্বারা সমর্থিত ।
13:19 আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ এবং রেকর্ড করেছি । শুভবিদায় ।

Contributors and Content Editors

Kaushik Datta, PoojaMoolya