Verwenden von Mintty als Standardterminal in Cygwin und Standard-Shell als Bash


Antworten:


14

Es gibt verschiedene Möglichkeiten, dies zu tun:

  1. Geben Sie bashals Befehlszeilenargument für mintty an, wie von Salton erwähnt.
  2. Setzen Sie die Windows- SHELLUmgebungsvariable auf / usr / bin / bash.
  3. Stellen Sie sicher, dass Sie in Ihrer Cygwin-Umgebung ein / etc / passwd (siehe mkpasswd (1)) haben, und setzen Sie die Shell für Ihre UID auf / usr / bin / bash. Cygwin liefert keinen Befehl chsh oder usermod, daher müssen Sie die Datei wahrscheinlich von Hand bearbeiten, wenn Sie diese Methode verwenden möchten.

Aus der mintty (1) Manpage:

INVOCATION
   If a program name is supplied on the command line, this is executed
   with any additional arguments given.  Otherwise, mintty looks for a
   shell to execute in the SHELL environment variable.  If that is not
   set, it reads the user's default shell setting from /etc/passwd.  As a
   last resort, it falls back to /bin/sh.  If a single dash is specified
   instead of a program name, the shell is invoked as a login shell.

Für mich ist der dritte Ansatz, die Shell in / etc / passwd einzurichten, der beste, damit mintty ausgeführt werden kann /path/to/mintty.exe [-i icon-file] -. Mit dem nachfolgenden erhalten -wir eine Login-Shell, mit der ich normalerweise eine Bildschirmsitzung starte.
Ryenus

/etc/passwdwird beim Upgrade mit Cygwin-Setup (manchmal?) überschrieben.
Dominykas Mostauskis

@ryenus was ist der Grund für dieses Nachlaufen -? Sprechen Sie über schwer zu googeln ..
Roy Truelove

@ RoyTruelove, um es zu einer Login-Shell zu machen? Wahrscheinlich überprüfen Sie bitte Bash-Handbuch
Ryenus

5

Sie können mintty bashBash als Standard starten


4

Angenommen, dieser Dateiname lautet mintty.bat. Doppelklicken Sie auf diese Datei, um ein Mintty-Terminal zu öffnen, und mit bash, path & pwd haben sich alle beruhigt.


@echo off

C:\cygwin64\bin\mintty.exe /bin/bash --login -i
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.