আমি এর সমতুল্য খুঁজে পেতে চাই
cmd 1 && cmd 2 && ... && cmd 20
কিন্তু একটি for
লুপের মধ্যে প্রকাশিত আদেশগুলি দিয়ে with
for i in {1..20}
do
cmd $i
done
প্রথমটির সমতুল্য সন্ধান করতে আপনি দ্বিতীয় প্রকাশে কী পরিবর্তন আনতে চান?
আমি এর সমতুল্য খুঁজে পেতে চাই
cmd 1 && cmd 2 && ... && cmd 20
কিন্তু একটি for
লুপের মধ্যে প্রকাশিত আদেশগুলি দিয়ে with
for i in {1..20}
do
cmd $i
done
প্রথমটির সমতুল্য সন্ধান করতে আপনি দ্বিতীয় প্রকাশে কী পরিবর্তন আনতে চান?
উত্তর:
আপনার মূল ক্রম সমতুল্য হবে:
for i in {1..20}
do
cmd $i || break
done
অমিতের উত্তরের সাথে পার্থক্য হ'ল স্ক্রিপ্টটি প্রস্থান হবে না, অর্থাৎ সম্ভাব্য কমান্ডগুলি কার্যকর করবে যা অনুক্রম / লুপ অনুসরণ করবে। নোট করুন যে পুরো লুপের রিটার্নের স্থিতি আমার পরামর্শের সাথে সর্বদা সত্য হবে, আপনার ক্ষেত্রে প্রাসঙ্গিক হলে এটি ঠিক করা যেতে পারে।
যদি আপনি একটি নোংরা এক-লাইন সমাধান চান, আপনি একটি কমান্ড তৈরি করতে এবং এটি ব্যাশে প্রেরণ করতে পারেন।
echo "cmd "{1..20}" &&" : | bash
যদি সেগুলির মধ্যে একটি ব্যর্থ হয় তবে আপনি লুপটি ভেঙে ফেলতে পারেন
for i in {1..55}; do
if ! cmd $i; then
exit 1
fi
done
break
আইনী না আছে কি? আমি নিশ্চিত যে if
বিবৃতিটি হস্তক্ষেপ করবে না ..
এভাবেই আমি টার্মিনালে ব্যবহার না করেই আমার কাজগুলি সম্পাদন করি &&
for i in google.com yahoo.com;do ping -c1 $i;echo $i;done
আপনার অনুরূপ একটি স্ক্রিপ্টে এই কমান্ডটি রাখতে হবে
for i in google.com yahoo.com
do echo $i;ping -c1 $i;
done
উভয়ই আমাকে একই আউটপুট দিচ্ছে
google.com পিং google.com (172.217.26.174) 56 (84) ডেটা বাইট। গুগল.কম থেকে by৪ বাইট (172.217.26.174): আইসিএমপি_সেক = 1 টিটিএল = 56 সময় = 259 এমএস
--- গুগল ডটকমের পিং পরিসংখ্যান --- ১ টি প্যাকেট প্রেরণ, ১ টি প্রাপ্ত, ০% প্যাকেট ক্ষতি, সময় 0 মিমি আরটিটি মিনিট / গড় / সর্বোচ্চ / এমডেভি = 259.794 / 259.794 / 259.794 / 0.000 এমএস ইয়াহু ডট কম (পিং ইয়াহু ডট কম) 98.138.253.109) 56 (84) ডেটা বাইট। ইয়াহু ডট কম থেকে by৪ বাইট (98.138.253.109): আইসিএমপি_সেক = 1 টিটিএল = 51 সময় = 398 এমএস
--- ইয়াহু ডট কম পিং পরিসংখ্যান --- ১ টি প্যাকেট সংক্রমণ, 1 টি প্রাপ্ত, 0% প্যাকেট ক্ষতি, সময় 0 মিমি আরটিটি মিনিট / গড় / সর্বোচ্চ / এমডেভ = 398.974 / 398.974 / 398.974 / 0.000 এমএস
cmd && cmd