একটি ফাইলের প্রতিটি লাইনের জন্য ব্যাশ

Bash Each Line File



বাশের ফর লুপ একাধিক কাজ সম্পাদনের জন্য বিভিন্ন বৈচিত্র্যের সাথে ব্যবহার করা যেতে পারে। এরকম একটি বৈচিত্র হল ফাইলের প্রতিটি লাইনের জন্য যা একটি ফাইলের সমস্ত লাইন পড়ার জন্য দায়ী। এই নিবন্ধে, আমরা ব্যাশের প্রতিটি ফাইলের জন্য ব্যবহারের পদ্ধতি সম্পর্কে কথা বলব।

দ্রষ্টব্য: নীচে দেখানো পদ্ধতিগুলি উবুন্টু 20.04 এ প্রদর্শিত হয়েছে। যাইহোক, তারা অন্য কোন লিনাক্স বিতরণের সাথেও ভাল কাজ করবে।







ব্যাশে ফাইলে প্রতিটি লাইনের জন্য ব্যবহারের পদ্ধতি:

এই পদ্ধতিগুলিতে, আমরা আপনাকে একটি উদাহরণ দেখাব যাতে আপনি একটি ফাইল থেকে প্রতিটি লাইন পড়তে পারেন এবং তারপরে আপনি এটি টার্মিনালে প্রদর্শন করতে পারেন অথবা আপনি এই লাইনগুলি অন্য ফাইলে সংরক্ষণ করতে পারেন। আসুন এই দুটি পদ্ধতিই দেখে নেওয়া যাক।



পদ্ধতি # 1: টার্মিনালে রিড লাইন প্রদর্শনের জন্য:

ফাইলের প্রতিটি লাইন ব্যবহার করে টার্মিনালে একটি ফাইলের লাইন প্রদর্শনের জন্য, আপনাকে নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করতে হবে:



ধাপ # 1: একটি ডামি টেক্সট ফাইল তৈরি করা:

প্রথমত, আপনাকে বিক্ষোভের স্বার্থে কিছু এলোমেলো তথ্য সহ একটি পাঠ্য ফাইল তৈরি করতে হবে। যদিও, এই পাঠ্য ফাইলটি যে কোন জায়গায় তৈরি করা যেতে পারে, তবে, এটি অত্যন্ত সুপারিশ করা হয় যে আপনি এটি হোম ফোল্ডারে তৈরি করুন। এটি করার জন্য, নীচের ছবিতে প্রদর্শিত ফাইল ম্যানেজার আইকনে ক্লিক করুন:





  • একটি ডামি টেক্সট ফাইল তৈরি করা

    এখন আপনার হোম ফোল্ডারের যেকোনো জায়গায় ডান ক্লিক করুন এবং প্রদর্শিত মেনু থেকে নতুন ডকুমেন্ট বিকল্পটি নির্বাচন করুন। তারপর Empty Document অপশন সিলেক্ট করুন। একবার আপনার হোম ফোল্ডারে একটি খালি ডকুমেন্ট তৈরি হয়ে গেলে, এর জন্য .txt এক্সটেনশন দ্বারা আপনার পছন্দের নাম দিন। এই উদাহরণে, আমরা এর নাম দিয়েছি ForEachLine.txt।

  • একটি ডামি টেক্সট ফাইল তৈরি করা 2
    এই টেক্সট ফাইলটি খুলতে ডাবল ক্লিক করুন এবং তারপরে নিচের ছবিতে দেখানো যে কোন র্যান্ডম টেক্সট টাইপ করুন। এটি করার পরে, এই ফাইলটি সংরক্ষণ করুন এবং এটি বন্ধ করুন।



  • একটি ডামি টেক্সট ফাইল তৈরি করা 3

    ধাপ # 2: ব্যাশ স্ক্রিপ্ট তৈরি করা:

    এবার হোম ফোল্ডারে আপনি যেভাবে টেক্সট ফাইল তৈরি করেছেন সেভাবেই একটি বাশ ফাইল তৈরি করুন, এইবার ছাড়া, আপনাকে .txt এক্সটেনশনের পরিবর্তে .sh এক্সটেনশনের পরে তার নাম প্রদান করতে হবে। আমরা আমাদের ব্যাশ ফাইলের নাম ForEachLine.sh রেখেছি কিন্তু আপনি এটি আপনার পছন্দের যে কোন নাম দিতে পারেন।
    বাশ স্ক্রিপ্ট তৈরি করা

    এই ফাইলটিতে ডাবল ক্লিক করে খুলুন এবং তারপরে আপনার নতুন তৈরি বাশ ফাইলে নীচের ছবিতে দেখানো স্ক্রিপ্টটি টাইপ করুন। এখানে, প্রথম লাইনটি নির্দেশ করে যে নিম্নলিখিত স্ক্রিপ্টটি একটি বাশ স্ক্রিপ্ট। আমরা কেবল ফাইল নামে একটি ভেরিয়েবল তৈরি করেছি এবং এটিকে আমাদের টেক্সট ফাইলের নাম দিয়েছি এর মান যেমন ForEachLine.txt। তারপরে আমরা লাইনস নামে একটি ভেরিয়েবল তৈরি করেছি এবং এটিকে $ (cat $ File) এর সমান করেছি। এখানে, cat কমান্ড আমাদের টেক্সট ফাইলের বিষয়বস্তু পড়ে এবং যখন এটি একটি $ চিহ্নের পূর্বে থাকে, তখন এই কমান্ড দ্বারা পড়া বিষয়বস্তু লাইনস ভেরিয়েবলে সংরক্ষণ করা হবে। এইভাবে, ForEachLine.txt নামের ফাইলের সমস্ত লাইন লাইন ভেরিয়েবলে সংরক্ষণ করা হবে। তারপর আমরা For লুপ প্রয়োগ করেছি যার একটি ইটারেটর লাইন আছে। এই পুনরাবৃত্তকারীটি আমরা উপরে তৈরি করা লাইন ভেরিয়েবলের উপর কাজ করে এবং এটি একেকটি লাইনের মাধ্যমে পুনরাবৃত্তি করবে। তারপর ডু-করা ব্লকে, আমরা ইকো কমান্ড ব্যবহার করে এই সমস্ত লাইন টার্মিনালে সহজভাবে প্রদর্শন করেছি।
    বাশ স্ক্রিপ্ট তৈরি করা 2

    ধাপ # 3: বাশ স্ক্রিপ্ট চালানো:

    এখন উবুন্টু 20.04 এ টার্মিনালটি চালু করুন এবং তারপরে উপরে তৈরি বাশ স্ক্রিপ্টটি চালানোর জন্য নিম্নলিখিত কমান্ডটি চালান:
    bash ForEachLine.sh
    বাশ স্ক্রিপ্ট চালানো হচ্ছে

    যখন এই কমান্ডটি ব্যাশ স্ক্রিপ্টটি চালানোর জন্য তৈরি করবে, তখন আপনি নিম্নলিখিত চিত্রের মতো আপনার টার্মিনালে আপনার পাঠ্য ফাইলের সমস্ত লাইন দেখতে সক্ষম হবেন:
    বাশ স্ক্রিপ্ট চালানো হচ্ছে

    পদ্ধতি # 2: সমস্ত পড়া লাইনগুলি অন্য ফাইলে সংরক্ষণ করার জন্য:

    এই পদ্ধতিতে, আমরা উপরের পদ্ধতিতে তৈরি করা ব্যাশ স্ক্রিপ্টটি সামান্য পরিবর্তন করেছি যাতে সমস্ত পাঠযোগ্য লাইনগুলি একটি নতুন পাঠ্য ফাইলে সেগুলি টার্মিনালে প্রদর্শনের পরিবর্তে সংরক্ষণ করা যায়। এটি করার জন্য, নীচে উল্লিখিত পদক্ষেপগুলি সম্পাদন করুন:

    ধাপ # 1: উপরে তৈরি বাশ স্ক্রিপ্ট সংশোধন করা এবং এটি চালানো:

    উপরের পদ্ধতিতে আপনার তৈরি করা ব্যাশ স্ক্রিপ্টটি খুলুন এবং নিচের ছবিতে দেখানো হিসাবে এটি সংশোধন করুন। আমরা ডো-করা ব্লকের মধ্যে ইকো কমান্ডের পরে একটি নতুন ফাইলের নাম অনুসারে >> প্রতীক যুক্ত করেছি। এই পরিবর্তনটি সমস্ত পড়া লাইনগুলিকে টার্মিনালে প্রদর্শনের পরিবর্তে একটি নতুন পাঠ্য ফাইলে সংরক্ষণ করবে। এখন বাশ কমান্ড দিয়ে বাশ ফাইলের নাম দিয়ে টার্মিনালের মাধ্যমে আবার বাশ স্ক্রিপ্ট চালান। এবার যখন বাশ স্ক্রিপ্ট চলবে, এটি একটি নতুন টেক্সট ফাইল তৈরি করবে যার নাম এই ক্ষেত্রে NewFile.txt।
    উপরে তৈরি বাশ স্ক্রিপ্ট সংশোধন করা এবং এটি চালানো 1

    ধাপ # 2: নতুন তৈরি টেক্সট ফাইল অ্যাক্সেস:

    সমস্ত পাঠ্য লাইনগুলি নতুন পাঠ্য ফাইলে সংরক্ষণ করা হয়েছে কিনা তা যাচাই করার জন্য, আপনি কেবল আপনার টার্মিনালে নিম্নলিখিত কমান্ডটি চালিয়ে সেই ফাইলের বিষয়বস্তু দেখতে পারেন:
    বিড়াল NewFile.txt
    নতুন তৈরি টেক্সট ফাইল অ্যাক্সেস করা
    নীচের ছবিতে দেখানো আউটপুট আপনাকে আশ্বস্ত করবে যে সমস্ত পড়া লাইনগুলি নতুন পাঠ্য ফাইলে অনুলিপি করা হয়েছে।
    নতুন তৈরি টেক্সট ফাইল অ্যাক্সেস 2

    উপসংহার:

    এইভাবে, আপনি ফাইলের প্রতিটি লাইনের জন্য একটি ফাইলের সমস্ত লাইন পড়ার জন্য ব্যবহার করতে পারেন এবং তারপরে এই লাইনগুলির সাথে ম্যানিপুলেট করতে পারেন। আমরা এই নিবন্ধে দুটি মৌলিক পরিস্থিতি সম্পর্কে কথা বলেছি, তবে আপনি আরও জটিল সমস্যার জন্য এই লুপটি ব্যবহার করতে পারেন।