আমি তুলনামূলক ভিন্ন ভিন্ন পরিবেশে কাজ করি যেখানে আমি বিভিন্ন এইচপিসি নোড, ভিএম, বা আমার ব্যক্তিগত ওয়ার্কস্টেশনগুলিতে বাশের বিভিন্ন সংস্করণ চালাচ্ছি। যেহেতু আমি আমার লগইন স্ক্রিপ্টগুলি একটি গিট রেপোতে রেখেছি, আমি .bashrcবোর্ড "জুড়ে" (যদি এই হোস্টটি, তবে ... "- টাইপ মেসেসি ছাড়াই বোর্ড জুড়ে একই (ইশ) ব্যবহার করতে চাই ।
আমি বাশ the 4.1 এর ডিফল্ট আচরণ পছন্দ করি যা কী টিপানোর সময় প্রসারিত cd $SOMEPATHহয় । 4.2 বা ততোধিক বাশিতে আপনাকে এই আচরণটি পুনরায় সক্ষম করতে হবে এবং এটি 4.2.29 অবধি উপলব্ধ হবে না । যদিও এটি কেবল একটি উদাহরণ; অন্যটি, সম্ভবত সম্পর্কিত বিকল্প, (যদিও এটি ঠিক কী তা আমি জানি না ) এছাড়াও v4.2 এ ডিফল্ট আচরণ পরিবর্তন করতে পারে।cd /the/actual/pathTabshopt -s direxpandshoptcomplete_fullquote
যাইহোক, direxpandব্যাশ 'র পূর্ববর্তী সংস্করণে দ্বারা স্বীকৃত হয় না, এবং যদি আমি চেষ্টা shopt -s direxpandআমার মধ্যে .bashrc, এটি একটি ত্রুটি বার্তায় ফলাফল কনসোলে প্রত্যেক সময় আমি একটি পুরোনো ব্যাশ সঙ্গে একটি নোড লগ ইন ছাপা হচ্ছে:
-bash: shopt: direxpand: invalid shell option name
আমি যা করতে চাই তা হল shop -s direxpandবাশ> ৪.১ এ শক্তিশালী উপায়ে বিকল্পটি সক্ষম করতে শর্তসাপেক্ষে প্রায় আবৃত করা, বাশের পুরানো সংস্করণগুলিকে ছাওয়া না করে ( যেমন , কেবল ত্রুটির আউটপুটটিকে পুনর্নির্দেশ নয় /dev/null)।
.bashrc। আমি এখনও $BASH_VERSINFOআমার নিজের উত্সাহের জন্য চলমান শেলের বড় / গৌণ সংস্করণটি জিজ্ঞাসাবাদ করতে কীভাবে ব্যবহার করব তার একটি রেকর্ড চেয়েছিলাম , এজন্য আমি নিজের উত্তর পোস্ট করা শেষ করেছি। :)