Im Creators Update können Sie in der Bash-Shell von Windows 10 jetzt Windows-Binärdateien und Standardbefehlsbefehle direkt von Bash aus ausführen. Sie können sowohl Linux- als auch Windows-Programme von derselben Bash-Shell ausführen oder sogar Windows-Befehle in ein Bash-Skript einbinden.
VERWANDT: Alles, was Sie mit der neuen Bash-Shell von Windows 10 tun können
Hier sind einige grundlegende Details, die Sie über diese Funktion wissen müssen:
cd
, um Arbeitsverzeichnisse zu ändern.Sehen wir uns nun an, wie man ein Programm ausführt.
VERWANDT: So greifen Sie auf Ihre Ubuntu Bash-Dateien in Windows (und auf Ihrem Windows-Systemlaufwerk in Bash) zu
Um ein Windows-Programm auszuführen, geben Sie den Pfad zur .exe-Datei des Programms in der Bash-Shell ein. Denken Sie daran, dass Ihr Windows C: Laufwerk unter / mnt / c in Bash verfügbar ist. In der Bash-Umgebung wird ebenfalls die Groß- / Kleinschreibung beachtet, daher müssen Sie die korrekte Groß- / Kleinschreibung angeben.
Angenommen, Sie möchten das Ping-Dienstprogramm unter C: Windows System32 PING.EXE starten. Sie würden den folgenden Befehl ausführen:
/mnt/c/Windows/System32/PING.EXE
Der folgende Befehl würde nicht funktionieren, da Bash Groß-und Kleinschreibung unterscheidet:
/ mnt / c / Windows /system32/ping.exe
Dies ist etwas komplizierter, wenn der Pfad komplexe Zeichen wie Leerzeichen und Klammern enthält, wie die Programme-Ordner. Sie müssen Leerzeichen, Klammern und andere komplexe Zeichen durch Voranstellen eines "" - Zeichens "flüchten".
Angenommen, Sie möchten das Internet Explorer-Programm unter C: Programme (x86) ausführen. Internet Explorer iexplore.exe. Sie müssten den folgenden Befehl in Bash ausführen:
/ mnt / c / Programme (x86 ) / Internet Explorer / iexplore.exe
Beachten Sie das "" vor dem Leerzeichen und der Klammer Figuren. Diese Zeichen müssen "maskiert" sein oder Bash erkennt nicht, dass die Zeichen Teil eines Dateipfads sind.
Die Bash-Shell übergibt Argumente direkt an die von Ihnen ausgeführten Befehle > Wenn Sie beispielsweise example.com pingen wollten, würden Sie Folgendes ausführen:
/mnt/c/Windows/System32/PING.EXE example.com
Oder, wenn Sie die Windows-Hosts-Datei öffnen wollten In Notepad würden Sie Folgendes ausführen:
/mnt/c/Windows/System32/notepad.exe "C: Windows System32 drivers etc hosts"
Sie verwenden den standardmäßigen Windows-Dateipfad, wenn Sie a übergeben Dateipfad direkt zu einem Windows-Programm. Das liegt daran, dass Bash das Argument direkt weitergibt. Notepad.exe und andere Windows-Programme erwarten einen Windows-Dateipfad.
So führen Sie einen integrierten Befehl aus
dir, den Sie normalerweise in einer Eingabeaufforderung ausführen. Um einen solchen Befehl auszuführen, müssen Sie die Binärdatei
cmd.exeausführen, die der Eingabeaufforderung zugeordnet ist, und den Befehl als Argument mit / C übergeben, etwa so:
/ mnt / c / Windows /System32/cmd.exe / C-Befehl
Um beispielsweise den Befehl
dirauszuführen, der in die Eingabeaufforderung integriert ist, führen Sie den folgenden Befehl aus:
/ mnt / c / Windows / System32 / cmd.exe / C dir
Hinzufügen von Verzeichnissen zum Pfad
export PATH = $ PATH: / mnt / c / Windows / System32
Sie könnten dann Windows .exe-Dateien direkt im System32-Ordner ausführen:
PING.exe example.com
notepad.exe
cmd.exe / C dir
So leiten Sie die Ausgabe eines Befehls an einen anderen
ipconfig.exe -allverwenden, um Details zu Ihren Netzwerkschnittstellen aufzulisten und sie an den Befehl Linux
grepzu leiten, um die Ausgabe zu durchsuchen. Um beispielsweise alle Informationen zu Ihrer Verbindung aufzulisten und nach Abschnitten zu suchen, die mit "IPv4-Adresse" übereinstimmen, führen Sie Folgendes aus:
/mnt/c/Windows/System32/ipconfig.exe -all | grep "IPv4-Adresse"
Das ist der grundlegende Prozess. Diese Befehle funktionieren auch, wenn sie in ein Bash-Skript integriert sind. Sie können also ein Bash-Skript schreiben, das sowohl Windows-Befehle als auch Linux-Dienstprogramme enthält. Wenn es in der Bash-Shell ausgeführt wird, funktioniert es in einem Bash-Skript.
Und wenn Sie in die andere Richtung gehen möchten, können Sie den Befehl "bash -c" verwenden, um Bash-Befehle über die Standard-Windows-Eingabeaufforderung auszuführen .
Was ist coreauthd und warum läuft es auf meinem Mac?
Sie sehen im Aktivitätsmonitor nach, was auf Ihrem Mac läuft, wenn Sie etwas Ungewöhnliches bemerken: coreauthd. Was ist das für ein Prozess? Erstens ist es Teil von macOS, also mach dir keine Sorgen, dass es ruchlos ist. Aber hier ist ein kurzer Blick auf, was es tut. VERWANDTE: Was ist dieser Prozess und warum läuft es auf meinem Mac?
So sehen oder streamen Sie den Super Bowl 2018 (ohne Kabel)
Wir sind bei T-minus Null Wochen zum Super Bowl, der größten Veranstaltung in den amerikanischen Sportarten (tut mir leid, tut mir leid , "Weltserie). Was ist das? Sie haben kein Kabel- oder Satellitenabonnement? Keine Sorge, Sie haben immer noch Möglichkeiten zu sehen. In diesem Jahr findet Super Bowl LII (das sind 52, wenn Ihre Fähigkeiten der römischen Ziffern rostig sind) in Minneapolis, Minnesota am Sonntag, den 4.