EDIT: Aşağıdaki MSYS2'nin önceki sürümleri için geçerlidir. 2020-01-21 itibariyle artık gerekmemektedir. FeRD'nin cevabı en iyi sonucu veriyor gibi görünüyor.
Ben bash yerine balık kullanmak istedim. Ne yazık ki buradaki yöntemlerin çoğu işe yaramadı, çünkü balık sözdizimi çok farklıydı.
En iyi sonuç veren şey, wzhd'un exec fish
bash başladığında ilk şey olarak koşma fikriydi . Yine de bir sorun vardı: Eğer bash kullanmak istersem, .bashrc
o satırı kaldırmak için düzenlemek zorunda kaldım çünkü balıktan çalıştırsam bile başka bir balık örneği başlatacaktı.
Yapılacak en iyi şey exec fish
, msys2 başladığında çalıştığından emin olmaktır, ancak her bash başladığında değil.
Bulduğum yol msys2_shell.cmd
msys2'nin kurulum klasöründeki dosyadan. Şu satırları buldum:
set SHELL_ARGS=
:collectparams
if not "x%~1" == "x" set SHELL_ARGS=%SHELL_ARGS% %1& shift& goto :collectparams
Görünüşe göre, başlar başlamaz bash'a geçmek için parametreleri tanımlıyorlar, ancak sadece bu komut dosyası çalıştığında (aksine .bashrc
). Bu satırı hemen sonra ekledim:
set SHELL_ARGS=%SHELL_ARGS% -c "exec fish"
Şimdiye kadar her şey yolunda görünüyor. Msys2'yi başlatmak, önceki yüklemeyi bitirir bitirmez bash'ı balıkla değiştirir, ancak bir bash komut satırına ihtiyacım varsa, hala başlayabilirim bash
.