Tipps zum Ausführen von Windows 10-Programmen in einer WSL-Linux-Shell

Das Windows-Subsystem für Linux verbindet die Aufteilung zwischen Windows und Linux, indem es DenMenschen erlaubt, Windows 10-Programme direkt innerhalb einer Linux-Shell auszuführen. Eine der Stärken des Windows Subsystems für Linux (WSL) ist, dass Benutzer nicht nur eine Linux-Distribution in Windows 10 ausführen können, sondern sie auch die Flexibilität haben, Windows 10-Programme in Linux auszuführen.

Aufgrund dieser Fähigkeit kann das Linux Funktionen von Windows oder für Windows-Programme steuern, um mit dem WSL-Dateisystem zusammenzuarbeiten oder deren Ausgabe von Linux-Befehlen verarbeitet wird. Darüber hinaus können WSL-Benutzer sogar komplexe Shell-Skripts erstellen, die sich auf die Linux-Verbreitung auswirken und auch zum Ausführen von Befehlen in Windows 10 verwendet werden können.

Sowohl Windows 10 als auch Linux verwenden eine PATH-Variable, die eine Liste von Ordnern enthält, die durchsucht werden, wenn Benutzer ein Programm ausführen. Wenn Sie versuchen, ein Programm zu starten und es nicht im PATH erkannt werden kann, werden Ihnen sowohl Linux als auch Windows mitteilen, dass das Programm nicht gefunden werden kann. In diesen Situationen müssen Sie das Programm mit dem vollständigen Pfad wie z. B. „C:-Notepad2-Notepad.exe“ ausführen.

Wenn eine WSL-Distribution von Windows 10 gestartet wird, wird die Linux PATH-Variable so konfiguriert, dass sie die Standard-Linux-Binärordner und Ihren regulären Windows 10-Pfad enthält. Dieser Pfad kann durch Eingabe der env | grep -Befehl „PATH“ an einer WSL-Shell-Eingabeaufforderung.

Neben der Ausführung von Programmen, um zusammen mit Dateien in WSL zu handeln, können Sie auch die Ausgabe von Windows 10-Programmen in Linux verarbeiten. Wenn ein Windows-Konsolenprogramm gestartet wird, wird seine Ausgabe direkt unter Linux und nicht unter Windows ausgestellt. Diese Ausgabe kann dann mit Programmen wie sed, awk, sort, etc. verarbeitet werden. Als einfaches Beispiel: Wenn wir eine Liste der Windows 10-Dienste nach dem Dienstnamen sortiert erhalten möchten, können wir den folgenden Befehl verwenden:

sc.exe query | grep SERVICE_NAME | awk ‚{print $1=““; print $0}‘ | sort -bf| sed ‚/^$/d‘