Slab ঢালাই এর পূর্বে যে সকল কাজ করণীয় | Civil Engineering | Bangla Video Tutorial
সুচিপত্র:
- লাইন সিনট্যাক্স দ্বারা একটি ফাইল লাইন পড়া
- লাইন উদাহরণ দ্বারা একটি ফাইল লাইন পড়া
- বিকল্প ফাইল পড়ার পদ্ধতি
- একটি প্রক্রিয়া প্রতিস্থাপন ব্যবহার
- এহেন স্ট্রিং ব্যবহার করা হচ্ছে
- ফাইল বর্ণনাকারী ব্যবহার করে
- উপসংহার
বাশ স্ক্রিপ্টগুলি লেখার সময় আপনি মাঝে মাঝে নিজেকে এমন পরিস্থিতিতে দেখতে পাবেন যেখানে আপনাকে একটি লাইনে একটি ফাইল লাইন পড়তে হবে। উদাহরণস্বরূপ, আপনার কাছে ডেটাযুক্ত একটি পাঠ্য ফাইল থাকতে পারে যা স্ক্রিপ্ট দ্বারা প্রক্রিয়া করা উচিত।
এই টিউটোরিয়ালে, আমরা বাশ-এ লাইন দ্বারা একটি ফাইল লাইন কীভাবে পড়তে হবে তা নিয়ে আলোচনা করব।
লাইন সিনট্যাক্স দ্বারা একটি ফাইল লাইন পড়া
লাইন বাই লাইন ফাইল পড়ার জন্য সর্বাধিক সাধারণ বাক্য গঠন:
while IFS= read -r line do echo "$line" done < input_file
বা সমমানের একক-লাইন সংস্করণ:
while IFS= read -r line; do echo $line; done < input_file
এটা কিভাবে কাজ করে?
ইনপুট ফাইল (
input_file
) হ'ল
read
কমান্ড দ্বারা পড়ার জন্য যে ফাইলটি আপনি খুলতে চান তার নাম।
read
কমান্ডটি প্রতিটি
line
ভেরিয়েবলের জন্য নির্ধারিত করে রেখায় ফাইল লাইন পড়ে reads সমস্ত লাইনগুলি প্রক্রিয়া করা হয়ে গেলে লুপটি সমাপ্ত হবে। অভ্যন্তরীণ ক্ষেত্র বিভাজক (
IFS
) শীর্ষস্থানীয় এবং ট্রেলিং হোয়াইটস্পেস সংরক্ষণের জন্য নাল স্ট্রিংয়ে সেট করা হয়েছে যা
read
কমান্ডের ডিফল্ট আচরণ।
লাইন উদাহরণ দ্বারা একটি ফাইল লাইন পড়া
আসুন নীচের উদাহরণটি একবার দেখুন। মনে করুন, আমাদের কাছে
distros.txt
নামের একটি ফাইল রয়েছে যা বেশ কয়েকটি জনপ্রিয় লিনাক্স বিতরণ এবং তাদের প্যাকেজ ম্যানেজারদের কমা (
,
) দ্বারা পৃথক করে রয়েছে:
Ubuntu, apt Debian, apt CentOS, yum Arch Linux, pacman Fedora, dnf
লাইন দ্বারা ফাইল লাইন পড়তে আপনি আপনার টার্মিনালে নিম্নলিখিত কোডটি চালাবেন:
while IFS= read -r line do echo "$line" done < distros.txt
কোডটি লাইন দ্বারা ফাইলটি পড়বে, প্রতিটি লাইনকে একটি ভেরিয়েবলের জন্য বরাদ্দ করবে এবং ভেরিয়েবলটি প্রতিধ্বনি করবে। বেসিকটি আপনি একই আউটপুট দেখতে পাবেন যেন আপনি বিড়াল কমান্ড ব্যবহার করে ফাইল সামগ্রী প্রদর্শন করবেন।
আপনি যদি কেবল অ্যাপটি ব্যবহার করে এমন বিতরণগুলি মুদ্রণ করতে চান? একটি উপায় হ'ল if স্টেটমেন্টটি ব্যবহার করুন এবং লাইনে অ্যাপটি সাবস্ট্রিং রয়েছে কিনা তা যাচাই করা হবে:
while IFS= read -r line do if]; then echo "$line" fi done < distros.txt
Ubuntu, apt Debian, apt
লাইন দ্বারা ফাইল লাইন পড়ার সময়, আপনি একাধিক ভেরিয়েবলগুলি রিড কমান্ডেও পাঠাতে পারেন যা
IFS
ভিত্তিতে লাইনটি বিভক্ত করবে। প্রথম ক্ষেত্রটি প্রথম ভেরিয়েবল, দ্বিতীয় থেকে দ্বিতীয় ভেরিয়েবল এবং আরও কিছুতে নির্ধারিত হয়। যদি ভেরিয়েবলের চেয়ে বেশি ক্ষেত্র থাকে তবে অবশিষ্ট ক্ষেত্রগুলি সর্বশেষ ভেরিয়েবলের জন্য বরাদ্দ করা হয়।
নিম্নলিখিত উদাহরণে, আমরা একটি কমাতে আইএফএস সেট করে দিচ্ছি (
,
) এবং দুটি ভেরিয়েবল
distro
এবং
pm
পঠন কমান্ডে প্রেরণ করছি। লাইনের শুরু থেকে প্রথম কমা পর্যন্ত সমস্ত কিছু প্রথম ভেরিয়েবলকে (
distro
) বরাদ্দ করা হবে এবং বাকী রেখাটি দ্বিতীয় ভেরিয়েবেলে (
pm
) নির্ধারিত হবে:
while IFS=, read -r distro pm do echo "$pm" is the package manager for "$distro" done < distros.txt
apt is the package manager for Ubuntu apt is the package manager for Debian yum is the package manager for CentOS pacman is the package manager for Arch Linux dnf is the package manager for Fedora
বিকল্প ফাইল পড়ার পদ্ধতি
একটি প্রক্রিয়া প্রতিস্থাপন ব্যবহার
প্রক্রিয়া বিকল্প আপনাকে ফাইলের নাম হিসাবে আদেশ থেকে আউটপুট পাস করতে দেয়:
while IFS= read -r line do echo "$line" done < <(cat input_file)
এহেন স্ট্রিং ব্যবহার করা হচ্ছে
এখানে স্ট্রিং হেরে ডকুমেন্টের একটি বৈকল্পিক। স্ট্রিং
(cat input_file)
নতুন
(cat input_file)
:
while IFS= read -r line do echo "$line" done <<< $(cat input_file)
ফাইল বর্ণনাকারী ব্যবহার করে
আপনি কোনও ফাইল বর্ণনাকারী ব্যবহার করে লুপটিতে ইনপুট সরবরাহ করতে পারেন:
while IFS= read -r -u9 line do echo "$line" done 9< input_file
ফাইল বর্ণনাকারীদের সাথে কাজ করার সময় শেল অভ্যন্তরীণ ফাইল বর্ণনাকারীদের সাথে দ্বন্দ্ব এড়াতে 4 থেকে 9 এর মধ্যে একটি সংখ্যা ব্যবহার করুন।
উপসংহার
বাশ-এ, আমরা কিছুক্ষণ পড়ার লুপটিতে ইনপুট হিসাবে ফাইলের নাম সরবরাহ করে একটি ফাইল লাইন বাই লাইন পড়তে পারি।
বাশ টার্মিনালইন্টেল লাইসেন্স দিয়ে স্পট দিয়ে এনভিডিয়া দিয়ে আদালতে যায় ইন্টেল নেহালেম প্রসেসরের জন্য চিপসেটে এনভিডিয়া নিয়ে লাইসেন্সিং বিরোধের সমাধান করতে আদালতে যায়।

ইন্টেলের সর্বশেষ নেহালেম প্রসেসরগুলির সাথে সামঞ্জস্যপূর্ণ চিপসেট তৈরির পরিকল্পনাটির উপর এনভিডিয়া নিয়ে লাইসেন্সিং বিতর্কের সমাধান করতে মঙ্গলবার ইন্টেল আদালতে গিয়েছিল।
উইন্ডোজ 10/8/7/7/7 এ ব্রেকিং এক্সটেন ফাইল এসোসিয়েশন ফিক্স করা EXE ফাইল এসোসিয়েশন ফিক্স করুন যদি আপনি exe বা lnk ফাইল না খুলতে পারেন তবে এই পোস্টটি দেখায় কিভাবে পুনরায় সেট, মেরামত, পুনরুদ্ধার করা EXE ফাইল অ্যাসোসিয়েশন FixExec ব্যবহার করুন বা এই ফিক্সটি প্রয়োগ করুন।

আপনি এমন একটি পরিস্থিতির সম্মুখীন হতে পারেন যেখানে আপনি কোন .Exe ফাইল বা শর্টকাট লিঙ্ক ফাইল খুলতে সক্ষম হবেন না, যেমন, EXE বা LNK ফাইলগুলি আপনি পরিবর্তে একটি "খুলুন" ডায়লগ বক্স পেতে পারেন, অথবা এটি অন্য প্রোগ্রামে ফাইলটি খুলতে পারে। এই ফাইল এক্সটেনশান ফাইল অ্যাসোসিয়েশন দুর্নীতিগ্রস্ত হয়ে থাকতে পারে যদি এটি ঘটে।
ফাইল ডিলার সফ্টওয়্যার মুছে ফেলার জন্য ফ্রি ফাইল ডিলার সফ্টওয়্যার। কারণ আপনি আপনার পিসিতে একটি ফাইল বা ফোল্ডার মুছে ফেলতে পারবেন না, উইন্ডোজ পিসিতে লকড ফাইল ও ফোল্ডার মুছে ফেলার জন্য এই ফ্রি ফাইল ডিলার সফটওয়্যারটি চেষ্টা করুন।

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