যদি এটি সদৃশ প্রশ্ন হয় তবে আমি আগাম ক্ষমা চাই। আমি এখানে জিজ্ঞাসা করার আগে অনুসন্ধান / চেক করার চেষ্টা করেছি।
আমি এই জাতীয় ওয়ান লাইনার লিখতে আরামদায়ক:
foocommand && foocommand2 && foocommand3
ধারণাটি হ'ল আমি পূর্ববর্তীটি "সফল" হলে কেবল পরবর্তী কমান্ডগুলি চালিত করতে চাই।
আমি কিছুটা দীর্ঘ স্ক্রিপ্ট লিখছি এবং এই ওয়ান-লাইনারটি কার্যকর নয় কারণ এটি অন্য সবার কাছে বিভ্রান্তিকর কোডের বিশাল ব্লকের মতো দেখাচ্ছে।
আমি কমান্ডগুলি ফাঁকা রাখতে চাই এবং স্ক্রিপ্টের মধ্যে তাদের মাঝে মন্তব্য লিখতে চাই। আমি কীভাবে এটি করতে পারি এবং এখনও সেখানে && এর সমতুল্য থাকতে পারি?
||
এবং &&
(এর বিপরীতে |
বা এর বিপরীতে &
) বলা হয় শর্ট সার্কিট। পরের অপারেটরগুলির সাথে ব্যবহার করা আচরণকে আগ্রহী মূল্যায়ন বলে।
a && b && c
চলবে , সুতরাং "এটি কেবল তখন সফল হয় যদি চালিত হয় " এবং "এটি কেবল তখনই চালিত হয় এবং উভয় সফল হয়" সমান বিবৃতি: সফল না হলে সফল হতে পারে না । b
a
c
b
c
a
b
b
a
a || b && c
আরও চিত্রিত।
true || false && echo hi
আউটপুট হবে hi
। স্পেসিফিকেশনটি পড়ে, অপারেটরগুলি "&&" এবং "||" সমান প্রাধান্য পাবে এবং বাম সাহিত্যের সাথে মূল্যায়ন করা হবে।
&&
মানে এই নয় যদি পূর্ববর্তী পরবর্তী কমান্ড চালানো হবে এক সফল হয়েছে। এর মানে কমান্ড চালানো হবে যদি সমষ্টিগত ফলাফলের এর সব কমান্ড তালিকাতে থাকা পূর্ববর্তী কমান্ড সাফল্য। আপনি এটি জানেন তবে ভবিষ্যতে পাঠকরা ভুল বুঝতে পারে।