আচরণের পার্থক্য
4.3.11 বাশে কিছু পার্থক্য:
প্রস্তাবনা : সর্বদা ব্যবহার []।
[[ ]]আমি দেখেছি প্রতিটি নির্মাণের জন্য পসিক্স সমতুল্য রয়েছে ।
আপনি যদি ব্যবহার করেন [[ ]]:
- বহনযোগ্যতা হারাতে
- পাঠককে অন্য ব্যাশ এক্সটেনশনের জটিলতা শিখতে বাধ্য করুন।
[একটি অদ্ভুত নাম সহ কেবল একটি নিয়মিত আদেশ, কোনও বিশেষ শব্দার্থিক জড়িত নয়।
Orn [[...]]কর্ন শেলের সমতুল্য নির্মাণ থেকে অনুপ্রাণিত
² তবে কিছু মান aবা b(যেমন +বা index) এর জন্য ব্যর্থ হয় এবং সংখ্যাসূচক তুলনা করে aএবং যদি bদশমিক পূর্ণসংখ্যার মতো দেখতে লাগে । expr "x$a" '<' "x$b"উভয় কাছাকাছি কাজ করে।
³ এবং কিছু মানের জন্য ব্যর্থ হয় aবা bমত !বা (।
B ব্যাশ ৩.২ এবং তারপরে এবং ব্যাশ ৩.১ এর সাথে সামঞ্জস্যতা সরবরাহ করা সক্ষম করা নেই (এর মতো BASH_COMPAT=3.1)
⁵ যদিও গোষ্ঠীবদ্ধ (এখানে দিয়ে {...;}কমান্ড দল পরিবর্তে (...)যা অপ্রয়োজনীয় subshell চালানো হবে) না প্রয়োজনীয় ||এবং &&শেল অপারেটার (যেমন বিরোধিতা ||এবং && [[...]]অপারেটরদের বা -o/ -a [অপারেটরদের) সমান প্রাধান্য আছে। সুতরাং [ a = a ] || [ a = b ] && [ a = b ]সমতুল্য হবে।
[[তা দিয়ে কোড ভাল এবং স্পষ্ট, কিন্তু মনে পড়ে সেদিনের কথা যখন আপনি বন্দর হবে ডিফল্ট শেল সঙ্গে ব্যবস্থা যা নয় আপনার scriptworksbashবাksh, ইত্যাদি[কৃপণ, জটিল, কিন্তু যেAK-47কোনও পরিস্থিতিতে যেমন কাজ করে ।