অ্যান্ড্রয়েড

লুপ জন্য বাশ

রবি নাম্বর গোপন রেখে রিচার্জ করার উপায় ।। ইচ্ছেডানা । ichchedanay service/offers

রবি নাম্বর গোপন রেখে রিচার্জ করার উপায় ।। ইচ্ছেডানা । ichchedanay service/offers

সুচিপত্র:

Anonim

লুপগুলি প্রোগ্রামিং ভাষার অন্যতম মৌলিক ধারণা। লুপগুলি কার্যকর যখন আপনি একটি নির্দিষ্ট শর্ত না আসা পর্যন্ত বার বার কমান্ডের একটি সিরিজ চালাতে চান।

স্ক্রিপ্টিং ভাষায় যেমন বাশের ক্ষেত্রে, পুনরাবৃত্ত কার্যগুলি স্বয়ংক্রিয় করার জন্য লুপগুলি কার্যকর।

লুপের জন্য, লুপের জন্য, এবং লুপ পর্যন্ত বাশ স্ক্রিপ্টিংয়ে তিনটি বেসিক লুপ কনস্ট্রাকশন রয়েছে।

এই টিউটোরিয়ালে, আমরা বাশে লুপের মূল বিষয়গুলি কভার করব। লুপের প্রবাহকে পরিবর্তন করতে কীভাবে বিরতি ব্যবহার করতে হবে এবং বিবৃতিগুলি অবিরত রাখতে আমরা আপনাকে তাও দেখাব।

লুপের জন্য স্ট্যান্ডার্ড ব্যাশ

For লুপ আইটেমের একটি তালিকা পুনরাবৃত্তি করে এবং প্রদত্ত কমান্ডের সেটটি সম্পাদন করে।

লুপের জন্য ব্যাশ নিম্নলিখিত ফর্মটি গ্রহণ করে:

for item in do done

তালিকাটি ফাঁকা স্থান, সংখ্যার একটি পরিসীমা, কমান্ডের আউটপুট, একটি অ্যারে ইত্যাদি দ্বারা পৃথক স্ট্রিংয়ের সিরিজ হতে পারে।

লুপ ওভার স্ট্রিং

নীচের উদাহরণে লুপটি স্ট্রিংগুলির তালিকার প্রতিটি আইটেমটির উপরে পুনরাবৃত্তি করবে এবং চলক element বর্তমান আইটেমটিতে সেট করা হবে।

for element in Hydrogen Helium Lithium Beryllium do echo "Element: $element" done

লুপটি নিম্নলিখিত আউটপুট উত্পাদন করবে:

Element: Hydrogen Element: Helium Element: Lithium Element: Beryllium

একটি সংখ্যা ব্যাপ্তি উপর লুপ

আপনি শুরু এবং ব্যাপ্তির শেষ পয়েন্টটি নির্দিষ্ট করে সংখ্যার বা অক্ষরের একটি সীমা নির্দিষ্ট করতে সিকোয়েন্স এক্সপ্রেশনটি ব্যবহার করতে পারেন। ক্রম প্রকাশটি নিম্নলিখিত ফর্মটি গ্রহণ করে:

{START..END}

নীচের উদাহরণে লুপটি 0 থেকে 3 পর্যন্ত সমস্ত সংখ্যার মাধ্যমে পুনরাবৃত্তি করবে।

for i in {0..3} do echo "Number: $i" done

Number: 0 Number: 1 Number: 2 Number: 3

বাশ 4 থেকে শুরু করে, ব্যাপ্তি ব্যবহার করার সময় কোনও বৃদ্ধি নির্দিষ্ট করা সম্ভব। এক্সপ্রেশন নিম্নলিখিত ফর্ম গ্রহণ করে:

{START..END..INCREMENT}

for i in {0..20..5} do echo "Number: $i" done

Number: 0 Number: 5 Number: 10 Number: 15 Number: 20

অ্যারে উপাদানগুলির উপর লুপ করুন

আপনি উপাদানগুলির একটি অ্যারেতে পুনরাবৃত্তি করতে লুপটির জন্যও ব্যবহার করতে পারেন:

নীচের উদাহরণে, আমরা একটি অ্যারে BOOKS সংজ্ঞায়িত করছি এবং অ্যারের প্রতিটি উপাদান ধরে পুনরাবৃত্তি করছি।

BOOKS=('In Search of Lost Time' 'Don Quixote' 'Ulysses' 'The Great Gatsby') for book in "${BOOKS}"; do echo "Book: $book" done

Book: In Search of Lost Time Book: Don Quixote Book: Ulysses Book: The Great Gatsby

লুপের জন্য সি-স্টাইলের ব্যাশ

লুপের জন্য সি-স্টাইলের বাক্য গঠনটি নিম্নলিখিত ফর্মটি নিচ্ছে:

for ((INITIALIZATION; TEST; STEP)) do done

INITIALIZATION অংশটি লুপটি শুরু হওয়ার পরে একবার কার্যকর করা হয়। তারপরে, TEST অংশটি মূল্যায়ন করা হয়। যদি এটি মিথ্যা হয় তবে লুপটি সমাপ্ত হবে। TEST সত্য হলে, লুপের দেহের অভ্যন্তরে কমান্ডগুলি কার্যকর করা হয় এবং STEP অংশটি আপডেট করা হয়।

নিম্নলিখিত কোডে, লুপ তারকারা i = 0 , তারপরে প্রতিটি পুনরাবৃত্তির আগে i ≤ 10 । সত্য হিসাবে যদি এটি i এবং i এর বর্তমান মান 1 ( i++ ) মুদ্রণ করে অন্যথায় লুপটি সমাপ্ত হয়।

for ((i = 0; i <= 1000; i++)); do echo "Counter: $i" done

লুপটি 1001 বার পুনরাবৃত্তি হবে এবং নিম্নলিখিত আউটপুট উত্পাদন করবে:

Counter: 0 Counter: 1 Counter: 2… Counter: 998 Counter: 999 Counter: 1000

বিবৃতি ভঙ্গ করুন এবং চালিয়ে যান

লুপ কার্যকর করার জন্য ব্রেক এবং চালিয়ে যাওয়া স্টেটমেন্টগুলি নিয়ন্ত্রণ করতে ব্যবহার করা যেতে পারে।

ব্রেক স্টেটমেন্ট

ব্রেক স্টেটমেন্ট বর্তমান লুপটি সমাপ্ত করে এবং প্রোগ্রাম স্টেটমেন্টটি স্টেটমেন্ট স্টেটমেন্ট অনুসরণ করে এমন স্টেটমেন্টে পাস করে। এটি যখন নির্দিষ্ট শর্ত পূরণ হয় তখন লুপটি সমাপ্ত করতে সাধারণত ব্যবহৃত হয়।

নীচের উদাহরণে, বর্তমান পুনরাবৃত্ত আইটেমটি 'লিথিয়াম' এর সমান হলে আমরা লুপটির সম্পাদন বন্ধ করতে if স্টেটমেন্টটি ব্যবহার করছি।

for element in Hydrogen Helium Lithium Beryllium; do if]; then break fi echo "Element: $element" done echo 'All Done!'

Element: Hydrogen Element: Helium All Done!

বিবৃতি অবিরত করুন

চালিয়ে যাওয়া বিবৃতিটি একটি লুপের বর্তমান পুনরাবৃত্তিটি প্রস্থান করে এবং প্রোগ্রাম নিয়ন্ত্রণটি লুপের পরবর্তী পুনরাবৃত্তিতে পাস করে।

নিম্নলিখিত উদাহরণে, আমরা বিভিন্ন সংখ্যার মাধ্যমে পুনরাবৃত্তি করছি এবং বর্তমান পুনরাবৃত্তি আইটেমটি '2' এর সমান হলে চালিয়ে যাওয়া বিবৃতি কার্যকরভাবে লুপের শুরুতে ফিরে আসবে এবং পরবর্তী পুনরাবৃত্তির সাথে চালিয়ে যাবে।

for i in {1..5}; do if]; then continue fi echo "Number: $i" done

Number: 1 Number: 3 Number: 4 Number: 5

লুপ উদাহরণ জন্য বাশ

ফাইলের নাম ফাঁকা করে ফাইলগুলির নাম পরিবর্তন করে aming

নিম্নোক্ত উদাহরণটি দেখায় কিভাবে বর্তমান ডিরেক্টরি ডিরেক্টরিতে সমস্ত ফাইলের নাম পরিবর্তনের জন্য স্থানটি আন্ডারস্কোরের পরিবর্তে লুপের জন্য ব্যাশ ব্যবহার করতে হয়।

for file in *\ *; do mv "$file" "${file// /_}" done

কোড লাইন লাইন ভেঙে দিন:

  • প্রথম লাইনটি একটি লুপ তৈরি করে এবং তার নামের স্থান সহ সমস্ত ফাইলের তালিকার মাধ্যমে পুনরাবৃত্তি করে। *\ * এক্সপ্রেশনটি তালিকা তৈরি করে। দ্বিতীয় লাইনটি তালিকার প্রতিটি আইটেমের জন্য প্রযোজ্য এবং একটি আন্ডারস্কোর ( _ ) দিয়ে স্থানটি প্রতিস্থাপন করে একটি নতুনটিতে স্থানান্তরিত করে। অংশ ${file// /_} একটি স্ট্রিং সহ প্যারামিটারের মধ্যে একটি প্যাটার্ন প্রতিস্থাপন করতে শেল প্যারামিটার সম্প্রসারণ ব্যবহার করছে। done হ'ল লুপ সেগমেন্টের সমাপ্তি নির্দেশ করে।

ফাইল এক্সটেনশন পরিবর্তন করা হচ্ছে

নিম্নোক্ত উদাহরণটি দেখায় যে কিভাবে বর্তমান ডিরেক্টরিতে.jpeg দিয়ে শেষ হওয়া সমস্ত ফাইলকে.jpeg থেকে.jpg এ প্রতিস্থাপন করে লুপের জন্য ব্যাশ ব্যবহার করতে হয়।

for file in *.jpeg; do mv -- "$file" "${file%.jpeg}.jpg" done

আসুন কোড লাইন লাইন বিশ্লেষণ করুন:

  • প্রথম লাইনটি একটি লুপ তৈরি করে এবং '.jpeg' দিয়ে শেষ হওয়া সমস্ত ফাইলের তালিকার মাধ্যমে পুনরাবৃত্তি করে second দ্বিতীয় রেখাটি তালিকার প্রতিটি আইটেমের জন্য প্রযোজ্য এবং ফাইলটিকে '.jpg' এর পরিবর্তে '.jpg' এর পরিবর্তে ফাইলটিকে একটি নতুন স্থানে নিয়ে যায় । done শেল প্যারামিটার সম্প্রসারণ ব্যবহার করে ফাইল নাম থেকে '.jpeg' অংশটি সরিয়ে ${file%.jpeg} । লুপ সেগমেন্টের শেষ নির্দেশ করে।

উপসংহার

তালিকার মাধ্যমে পুনরাবৃত্তি করতে লুপের জন্য ব্যাশ কীভাবে ব্যবহার করতে হয় সে সম্পর্কে এখনই আপনার ভাল বোঝা উচিত।

বাশ লুপ টার্মিনাল