মূল কন্টেন্টে যান
মডিউল 3 · 1-এর পাঠ 2কোর্সে 6/11~15 min
মডিউল পাঠ (1/2)

আউটপুট এবং পুনঃনির্দেশ (ইকো, বিড়াল, >)

লিনাক্সে, প্রায় সমস্ত কমান্ড একটি ইনপুট স্ট্রীম থেকে ডেটা পড়ে এবং একটি আউটপুট স্ট্রীমে ফলাফল লেখে। এই চ্যানেলগুলিকে স্ট্যান্ডার্ড স্ট্রিম বলা হয়:

  • স্ট্যান্ডার্ড ইনপুট (stdin): যে স্ট্রীম থেকে কমান্ডটি তার ইনপুট পড়ে (ডিফল্ট হল কীবোর্ড)।
  • স্ট্যান্ডার্ড আউটপুট (stdout): যে স্ট্রীমটিতে কমান্ডটি তার সফল আউটপুট লেখে (ডিফল্ট হল টার্মিনাল স্ক্রিন)।
  • স্ট্যান্ডার্ড ত্রুটি (stderr): যে স্ট্রীমটিতে কমান্ডটি তার ত্রুটি বার্তাগুলি লেখে (ডিফল্ট হল স্ক্রিন)।

কমান্ড লাইন ব্যবহার করে, আমরা সরাসরি ফাইলগুলিতে ফলাফল সংরক্ষণ করতে এই স্ট্রীমগুলিকে পুনঃনির্দেশ করতে পারি।


প্রিন্টিং টেক্সট: echo

echo কমান্ডটি কেবল তার আদর্শ আউটপুটে (স্ক্রিন) এর আর্গুমেন্ট লেখে:

Bash
echo "Hello everyone"

পুনঃনির্দেশিত আউটপুট (ওভাররাইট): >

আপনি যদি একটি কমান্ডের আউটপুটটি স্ক্রীনে প্রদর্শনের পরিবর্তে একটি ফাইলে সংরক্ষণ করতে চান, তাহলে আপনি > এর চেয়ে বড় রিডাইরেক্ট অপারেটর ব্যবহার করতে পারেন:

Bash
echo "Hello everyone" > greetings.txt

এই কমান্ডটি echo চালায় এবং এর আউটপুট greetings.txt ফাইলে পুনঃনির্দেশ করে।

[!গুরুত্বপূর্ণ] যদি greetings.txt ফাইলটি বিদ্যমান না থাকে তবে এটি তৈরি করা হয়। যদি এটি ইতিমধ্যেই বিদ্যমান থাকে, তাহলে **এর বিদ্যমান বিষয়বস্তু সম্পূর্ণরূপে মুছে ফেলা হবে এবং নতুন আউটপুট দিয়ে ওভাররাইট করা হবে।


ফাইলের বিষয়বস্তু পড়া: cat

ফ্লাইতে এক বা একাধিক টেক্সট ফাইলের বিষয়বস্তু দেখতে, cat কমান্ডটি ব্যবহার করুন (concatenate এর জন্য সংক্ষিপ্ত):

Bash
cat greetings.txt

আউটপুট যুক্ত করা হচ্ছে: >>

আপনি যদি একটি বিদ্যমান ফাইলের শেষে নতুন লাইনগুলিকে ওভাররাইট না করে সংযোজন করতে চান, তাহলে আপনাকে অবশ্যই অ্যাপেন্ড অপারেটর >> ব্যবহার করতে হবে:

Bash
echo "New line of text" >> greetings.txt

এখন, cat greetings.txt দিয়ে ফাইল পড়া প্রথম লাইন এবং দ্বিতীয় লাইন উভয়ই দেখাবে।


ব্যবহারের উদাহরণ এবং সাধারণ ত্রুটি

আপনি একই সময়ে একাধিক ফাইল cat এ ক্রমানুসারে প্রদর্শন করতে পারেন (সংযুক্ত):

Bash
cat notes.txt info.txt
# Output:
# Keep learning Linux!
# Linux is awesome.

আপনি > অপারেটর ব্যবহার করে সম্মিলিত আউটপুটকে একটি তৃতীয় ফাইলে পুনঃনির্দেশ করতে পারেন:

Bash
cat notes.txt info.txt > combined.txt

যদি আপনি এমন একটি ফাইল পড়ার চেষ্টা করেন যা বিদ্যমান নেই, cat একটি ত্রুটি বার্তা লিখবে:

Bash
cat nonexistent_file.txt
# Output:
# cat: nonexistent_file.txt: No such file or directory

নিজে চেষ্টা করে দেখুন

অনুশীলনী 1: শুভেচ্ছা সহ একটি ফাইল তৈরি করুন

ব্যায়াম#linux.m3.l1.e1
প্রচেষ্টা: 0লোড হচ্ছে...

ইকো এবং > অপারেটর ব্যবহার করে 'hello.txt' নামের একটি ফাইল তৈরি করুন যাতে ঠিক 'হ্যালো ওয়ার্ল্ড' লেখাটি রয়েছে।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

উদ্ধৃতি, > অপারেটর এবং hello.txt-এ স্ট্রিং অনুসরণ করে ইকো ব্যবহার করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

অনুশীলনী 2: একটি ফাইলে নোট যুক্ত করুন

ব্যায়াম#linux.m3.l1.e2
প্রচেষ্টা: 0লোড হচ্ছে...

বর্তমান বিষয়বস্তু মুছে না দিয়ে বিদ্যমান 'notes.txt' ফাইলের শেষে 'Linux is fun' লাইনটি যুক্ত করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Notes.txt ফাইলে টেক্সট যোগ করতে >> অপারেটর ব্যবহার করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

অনুশীলনী 3: ফাইলগুলি সংযুক্ত করুন

ব্যায়াম#linux.m3.l1.e3
প্রচেষ্টা: 0লোড হচ্ছে...

'notes.txt' এবং 'info.txt' ফাইলের বিষয়বস্তু সংযুক্ত করুন এবং 'combined.txt' নামে একটি নতুন ফাইলে সম্মিলিত আউটপুট সংরক্ষণ করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

দুটি উৎস ফাইলের নাম অনুসরণ করে cat ব্যবহার করুন এবং > দিয়ে আউটপুটটিকে গন্তব্য ফাইলে পুনঃনির্দেশ করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ