Linux Terminal unter Windows 10

Sie können unter Windows 10 mit einem emulierten Linux Terminal arbeiten. In der folgenden Beispielen wird der Benutzer imitest verwendet, Sie verwenden dort immer Ihren Benutzernamen s0123456 (wobei 123456 für Ihre Matrikelnummer steht).

Beachten Sie bitte, das Ihnen nur die gebräuchlichsten Linux Befehle zur Verfügung stehen.

Starten Sie im Startmenu das Programm Cygwin64 Terminal. Sie erhalten dann folgendes Fenster:

Mit dem Befehl mount werden Ihnen die eingebundenen Verzeichnisse angezeigt, mit dem Befehl pwd ihr aktuelles Arbeitsverzeichnis:

Ihr Imi-Wokspace I: wird dabei unter /cygdrive/i eingebunden, ihr HTW-Space H: unter /cygdrive/h, das IMI-Share Verzeichnis Z: unter /cygdrive/z und die lokale Festplatte unter /cygdrive/c.

Ihr aktuelles Arbeitsverzeichnis ist unter /home/s0123456 eingebunden, wobei '123456' Ihre Matrikelnummer ist. Dieses Verzeichnis liegt auf der lokalen Festplatte unter C:\cygwin64\home\s0123456. Beachten Sie bitte: dieses Verzeichnis darf jeder am PC angemeldete Benutzer lesen, und dieses Verzeichnis wird nicht mit Ihrem Windows Profil synchronisiert, liegt also nur auf dem PC, an welchem Sie gerade arbeiten. Erzeugen Sie eigene Dateien daher besser wie gewohnt in Ihrem IMI-Workspace I:. Wechseln Sie dazu im Terminalfenster nach /cygdrive/i und erzeugen dort ein Verzeichnis Ihrer Wahl, z.B. myLinuxFiles:

Sie können nun wie gewohnt unter Linux arbeiten. Als kleines Beispiel wird hier ein bash Skript erzeugt, welches eine Ausgabe auf dem Terminal ausgibt. Starten Sie den Editor mit dem Befehl vim helloWorld.sh, wechseln Sie mit 'i' (ohne die Anführungszeichen) in den Insertmode und geben Sie die folgenden zwei Zeilen ein:

Wechseln Sie mit der Taste Esc zurück in den Command Mode und geben Sie dann die Tastenkombination ':wq' (ohne die Anführungszeichen) gefolgt von der Return Taste an. Ihre Datei wird dann gespeichert und Sie verlassen den Editor vim. Zeigen Sie danach den Inhalt Ihres Verzeichnisses mit ls -la an:

Ihre Datei helloWorld.sh darf von Ihnen (und von Mitgliederm ihrer Gruppe) gelesen und geschrieben werden, von allen anderen Usern nur gelesen. Sie darf aber nicht ausgeführt werden. Erteilen Sie sich nun das Recht, diese Datei auszuführen, indem Sie das Kommando chmod u+x helloWorld.sh eingeben. Zeigen sie danach den Inhalt des Verzeichnisses erneut an:

Sie können die Datei nun ausführen, geben sie dazu das Kommando ./helloWorld.sh ein:

cygwin64 bringt sowohl eigene Pakete mit, kann aber auch auf andere unter Windows installierte Pakete zugreifen. Wenn Sie echo $PATH eingeben, sehen Sie das cygwin64 zunächst in den eigenen Unterverzeichnissen /usr/local/bin sowie /usr/bin nach Paketen sucht, und danach den kompletten Windows Path absucht. Wenn Sie which gcc ausführen, wird das Paket als eigenes Paket gefunden, wenn Sie which java ausführen, wird das unter Windows installierte Java gefunden, welches Sie auch ausführen können:

Beachten Sie, das cygwin64 ein Linux System unter Windows 10 nur emuliert. Manche Dinge verhalten sich daher anders als Sie es unter Linux gewohnt sind, dies betrifft insbesondere das Dateisystem. Da Windows hier nicht zwischen Groß- und Kleinschreibung unterscheidet, können Sie zum Beispiel ihr oben erstelltes Bash Skript auch als ./HElLoWoRLd.Sh aufrufen. Ausserdem werden die relativ einfachen Linux Dateirechte auf die wesentlich komplizierteren Windows Dateirechte abgebildet. Dabei muss cygwin64 die Windows Dateirechte in einer Reihenfolge anordnen, die unter Windows an sich ungültig ist. Wenn Sie sich die Dateirechte ihres oben erstellten bash Skriptes mit dem Windows Explorer ansehen, bekommen Sie daher eine Warnmeldung:

Ignorieren Sie dies einfach und versuchen Sie insbesondere nicht, die Dateirechte ihrer in cygwin64 erstellten Dateien mit Hilfe des Windows Explorers zu ändern.