সম্পাদনা: নীচে এমএসওয়াইএস 2 এর পূর্ববর্তী সংস্করণগুলিতে প্রযোজ্য। 2020-01-21 পর্যন্ত, এটি আর প্রয়োজন হয় না। ফেআরডির উত্তরটি সেরা কাজ করে বলে মনে হচ্ছে।
আমি বাশের পরিবর্তে মাছ ব্যবহার করতে চেয়েছিলাম। দুর্ভাগ্যক্রমে এখানে বেশিরভাগ পদ্ধতি কার্যকর হয়নি কারণ সম্ভবত ফিশ সিনট্যাক্সটি এত আলাদা।
exec fishবাশ শুরু হওয়ার পরে প্রথম জিনিস হিসাবে চালানো সম্পর্কে ডাব্লুডিজিএডের ধারণাটি সবচেয়ে ভাল কাজ করেছিল। তবুও একটি সমস্যা ছিল: আমি যদি ব্যাশ ব্যবহার করতে চাইতাম তবে .bashrcthat লাইনটি সরাতে আমাকে সম্পাদনা করতে হবে কারণ আমি এটি মাছ থেকে চালালেও এটি কেবল অন্য মাছের উদাহরণ শুরু করবে।
করণীয় সর্বোত্তম জিনিসটি এটি নিশ্চিত করা হয় যে exec fishযখন এমএসএস 2 শুরু হয় তখন রান হয় তবে প্রতিবার ব্যাশ শুরু হয় না।
msys2_shell.cmdএমএসএস 2 এর ইনস্টলেশন ফোল্ডারে থাকা ফাইলটির মাধ্যমে আমি যেভাবে সন্ধান করেছি । আমি এই লাইনগুলি পেয়েছি:
set SHELL_ARGS=
:collectparams
if not "x%~1" == "x" set SHELL_ARGS=%SHELL_ARGS% %1& shift& goto :collectparams
দেখে মনে হচ্ছে যে তারা এটি শুরু হওয়ার সাথে সাথে ব্যাশে যাওয়ার জন্য পরামিতিগুলি সংজ্ঞায়িত করছে তবে কেবল যখন এই স্ক্রিপ্টটি চলবে (বিপরীত .bashrc)। সুতরাং আমি এই লাইনটি ঠিক পরে যুক্ত করেছি:
set SHELL_ARGS=%SHELL_ARGS% -c "exec fish"
এখন পর্যন্ত সবকিছু ঠিক আছে বলে মনে হচ্ছে। পূর্ববর্তী লোডিং শেষ হওয়ার সাথে সাথে এমএসএস 2 শুরু করা মাছের সাথে ব্যাশকে প্রতিস্থাপন করে তবে আমার যদি বাশ কমান্ড লাইনের প্রয়োজন হয় তবে আমি কেবল এটি দিয়ে শুরু করতে পারি bash।