Freigeben über


Verwenden von Befehlszeilenargumenten für Windows Terminal

Verwenden Sie wt.exe, um eine neue Instanz von Windows Terminal über die Befehlszeile zu öffnen. Sie können stattdessen auch den Ausführungsalias wt verwenden.

Hinweis

Wenn Sie Windows Terminal aus dem Quellcode auf GitHub erstellen, können Sie diesen Build mithilfe wtd.exe oder wtdöffnen.

Befehlszeilenargument für Windows Terminal für geteilte Bereiche

Befehlszeilensyntax

Die wt Befehlszeile akzeptiert zwei Arten von Werten: Optionen und Befehle. Optionen sind eine Liste von Flaggen und anderen Parametern, die das Verhalten der wt Befehlszeile als Ganzes steuern. Befehle stellen die Aktion oder liste der Aktionen bereit, die durch Semikolons getrennt sind, die von der Befehlszeile implementiert werden. Wenn Sie keinen Befehl angeben, verwendet die Befehlszeile standardmäßig new-tab.

wt [options] [command ; ]

Hinweis

Die windowingBehavior Eigenschaft kann das Verhalten des wt.exe Befehls beeinflussen. Passen Sie diese Einstellung an die Standardeinstellung zwischen dem Öffnen eines neuen Fensters oder dem Öffnen einer neuen Registerkarte an.

Um eine Hilfemeldung anzuzeigen, die die verfügbaren Befehlszeilenargumente auflistet, geben Sie Folgendes ein: wt -h, , , wt --help, wt -?oder wt /?.

Optionen und Befehle

Unten finden Sie die vollständige Liste der unterstützten Befehle und Optionen für die wt Befehlszeile.

Option Description
--help, -h, -?, /? Zeigt die Hilfemeldung an.
--maximized, -M Startet das Terminal maximiert.
--fullscreen, -F Startet das Terminal als Vollbildmodus.
--focus, -f Startet das Terminal im Fokusmodus. Kann mit maximized.
--pos x,y Startet das Terminal an der angegebenen Position. x oder y kann weggelassen werden, um den Standardwert aus den Einstellungen zu verwenden.
--size c,r Startet das Terminal mit der angegebenen Anzahl von Spalten (c) und Zeilen (r).
--window, -w window-id Führt den angegebenen Befehl in einem bestimmten Fenster aus.

Der --window Parameter kann verwendet werden, um Befehle an vorhandene Terminalfenster zu senden.

window-id kann entweder die ganzzahlige ID eines Fensters oder der Name eines Fensters sein. Außerdem werden die folgenden reservierten Werte akzeptiert:

  • new oder -1: Führen Sie diesen Befehl immer in einem neuen Fenster aus.
  • last oder 0: Führen Sie diesen Befehl immer im zuletzt verwendeten Fenster aus.

Wenn kein Fenster mit dem angegebenen window-idFenster vorhanden ist, wird ein neues Fenster mit dieser ID/diesem Namen erstellt.

Beispielsweise wird beim Ausführen wt -w _quake ein neues "Quakefenster" geöffnet. Wenn Sie diesen Befehl erneut ausführen, wird eine neue Registerkarte im vorhandenen Bebenfenster geöffnet.

Befehl 'Neue Registerkarte'

Verwenden Sie diesen Befehl, um eine neue Registerkarte zu erstellen. Weitere Informationen finden Sie in der newTab Aktion.

Command Parameter Description Werte
new-tab, nt --profile, -p profile-name Erstellt eine neue Registerkarte basierend auf dem zugewiesenen Profilnamen. Profilname
new-tab, nt --startingDirectory, -d starting-directory Erstellt eine neue Registerkarte basierend auf dem zugewiesenen Startverzeichnispfad. Verzeichnispfad
new-tab, nt --title title Erstellt eine neue Registerkarte mit zugewiesenem Titel. Text, der als Registerkartentitel verwendet werden soll
new-tab, nt --tabColor hex-color Erstellt eine neue Registerkarte mit der zugewiesenen Registerkartenfarbe. Hexfarbe als #RGB oder #RRGGBB
new-tab, nt --suppressApplicationTitle Überschreiben Sie die Einstellung des Profils suppressApplicationTitle , und legen Sie sie auf true
new-tab, nt --useApplicationTitle Überschreiben Sie die Einstellung des Profils suppressApplicationTitle , und legen Sie sie auf false
new-tab, nt --colorScheme scheme-name Überschreiben Sie die Einstellung des Profils colorScheme , und legen Sie sie aus den Einstellungen mit dem Namen auf das Schema fest. scheme-name Der Name eines Farbschemas in den Einstellungen
new-tab, nt --appendCommandLine Fügt die bereitgestellte Befehlszeile an den Standardbefehl des Profils an, anstatt sie zu ersetzen.
new-tab, nt --inheritEnvironment, !--reloadEnvironment Erben Sie die eigenen Umgebungsvariablen des Terminals beim Erstellen der neuen Sitzung, anstatt einen neuen Umgebungsblock zu erstellen. Dies wird standardmäßig festgelegt, wenn ein commandline Übergeben wird.
new-tab, nt commandline Erstellt eine neue Registerkarte basierend auf der zugewiesenen Befehlszeile. Ausführbare Datei mit optionalen Argumenten

Tipp

Wenn Sie den Titel einer Registerkarte in Windows Terminal ändern und diesen Titel beibehalten möchten, müssen Sie die Option suppressApplicationTitle aktivieren, indem Sie sie auf truefestlegen.

Befehl 'Geteilter Bereich'

Verwenden Sie diesen Befehl, um einen neuen geteilten Bereich zu erstellen. Weitere Informationen findest du im Artikel über die Aktion splitPane.

Command Parameter Description Werte
split-pane, sp -H, --horizontal, -V, --vertical Erstellt einen neuen geteilten Fensterbereich entweder horizontal oder vertikal. N/A. Keine zusätzlichen Werte, die zugewiesen werden sollen.
split-pane, sp --profile, -p profile-name Erstellt einen neuen geteilten Fensterbereich basierend auf dem zugewiesenen Befehlszeilenprofil. Wenn Sie diesen Parameter nicht zuweisen, wird das Standardprofil verwendet. Profilname
split-pane, sp --startingDirectory, -d starting-directory Erstellt einen neuen geteilten Fensterbereich basierend auf dem zugewiesenen Startverzeichnispfad. Wenn Sie diesen Parameter nicht zuweisen, wird das Standardstartverzeichnis verwendet. Verzeichnispfad
split-pane, sp --title Erstellt einen neuen geteilten Fensterbereich mit dem zugewiesenen Titel. Text, der als Registerkartentitel verwendet werden soll
split-pane, sp --tabColor Erstellt einen neuen geteilten Fensterbereich mit der zugewiesenen Registerkartenfarbe. Hexfarbe als #RGB oder #RRGGBB
split-pane, sp --size, -s size Erstellt einen neuen geteilten Fensterbereich mit der zugewiesenen Größe. Float, der den Teil des übergeordneten Bereichs angibt, der durch eine Dezimalzahl dargestellt wird. Um beispielsweise .4 40% des übergeordneten Bereichs darzustellen.
split-pane, sp commandline Erstellt einen neuen geteilten Fensterbereich basierend auf der zugewiesenen Befehlszeile. Ausführbare Datei mit optionalen Befehlen
split-pane, sp --duplicate, -D Erstellt einen neuen geteilten Fensterbereich, der den aktuellen Bereich dupliziert. N/A. Keine zusätzlichen Werte, die zugewiesen werden sollen.
split-pane, sp --suppressApplicationTitle Setzt die Einstellung des Profils suppressApplicationTitle außer Kraft und legt sie auf truefest.
split-pane, sp --useApplicationTitle Setzt die Einstellung des Profils suppressApplicationTitle außer Kraft und legt sie auf falsefest.
split-pane, sp --colorScheme scheme-name Setzt die Einstellung des Profils colorScheme außer Kraft und legt sie aus den Einstellungen mit dem Namen scheme-nameauf das Schema fest. Der Name eines Farbschemas in den Einstellungen

Befehl 'Fokusregisterkarte'

Verwenden Sie diesen Befehl, um eine bestimmte Registerkarte innerhalb des Fensters zu konzentrieren. Weitere Informationen findest du im Artikel über die Aktion switchToTab.

Command Parameter Description Werte
focus-tab, ft --target, -t tab-index Konzentriert sich entsprechend der Indexnummer der Registerkarte auf eine bestimmte Registerkarte. Tabstoppindex als ganze Zahl

Befehl "Fokus verschieben"

Verwenden Sie diesen Befehl, um den Fokus innerhalb des Fensters zu verschieben. Weitere Informationen findest du im Artikel über die Aktion moveFocus.

Command Parameter Description Werte
move-focus, mf <direction> Verschieben des Fokus zwischen Bereichen. Siehe unten für akzeptierte direction Werte

Akzeptierte direction Werte

  • up, down, leftoder right verschieben Sie den Fokus in die angegebene Richtung.
  • first verschiebt den Fokus auf den ersten Blattbereich in der Struktur.
  • previous verschiebt den Fokus auf den zuletzt verwendeten Bereich vor dem aktuellen Bereich.
  • nextInOrder, previousInOrder verschiebt den Fokus in der Reihenfolge der Erstellung auf den nächsten oder vorherigen Bereich.

Befehl 'Bereich verschieben'

Verwenden Sie diesen Befehl, um einen Bereich innerhalb des Fensters zu verschieben. Weitere Informationen findest du im Artikel über die Aktion movePane.

Command Parameter Description Werte
move-pane, mp --tab,-t <index> Verschieben des aktiven Bereichs auf die angegebene Registerkarte im Fenster Der nullindizierte Index der Registerkarte, in den der Bereich verschoben werden soll.

Befehl 'Tauschbereich'

Verwenden Sie diesen Befehl, um die Position von zwei Bereichen innerhalb des Fensters zu tauschen. Siehe auch die swapPane Aktion.

Command Parameter Description Werte
swap-pane <direction> Tauschen des Bereichs mit dem Bereich in der angegebenen Richtung Siehe unten für akzeptierte direction Werte

Akzeptierte direction Werte (diese Werte sind identisch mit dem move-focus Unterbefehl):

  • up, down, , leftoder right: Tauschen Sie den aktiven Bereich mit dem Bereich in der angegebenen Richtung.
  • first: Tauschen Sie den aktiven Bereich mit dem ersten Blattbereich in der Struktur aus.
  • previous: Tauschen Sie den aktiven Bereich mit dem zuletzt verwendeten Bereich vor dem aktuellen Bereich aus.
  • nextInOrder, previousInOrder: Tauschen Sie den aktiven Bereich mit dem nächsten oder vorherigen Bereich in der Reihenfolge der Erstellung aus.

Beispiele für Befehlszeilenargumente

Befehle können geringfügig variieren, je nachdem, welche Befehlszeile Sie verwenden.

Übergeben eines Arguments an die Standardshell

Um eine Instanz von Windows Terminal zu starten und einen Befehl auszuführen, rufen Sie wt.exe gefolgt von Ihrem Befehl auf.

Hier ist ein Beispiel für das Aufrufen von Windows Terminal zum Übergeben eines Pingbefehlsarguments zum Echo einer IP-Adresse:

wt ping learn.microsoft.com

Hier sehen Sie ein Beispiel für das Aufrufen von Windows Terminal zum Öffnen einer neuen Registerkarte mit einer PowerShell-Befehlszeile, bestätigen, dass der Startdienst-Befehl aufgerufen wird, und öffnen Sie eine weitere neue Registerkarte mit der Windows-Eingabeaufforderung , die im /k Verzeichnis geöffnet ist:

wt new-tab PowerShell -c Start-Service ; new-tab cmd /k dir

Ziel eines bestimmten Fensters

Die folgenden Beispiele zeigen, wie Sie die --window,-w Option einsetzen, um bestimmte Fenster zu verwenden.

// Open a new tab with the default profile in the current window
wt -w 0 nt

// Open a new tab in a new window with the default profile
wt -w -1 nt

// Open a new tab in the first-created terminal window with the default profile
wt -w 1 nt

// Open a new tab in the terminal window named foo with the default profile. If foo does not exist, create a new window named foo.
wt -w foo nt

Öffnen einer neuen Profilinstanz

Um eine neue Terminalinstanz zu öffnen, z. B. das Profil "Ubuntu-18.04", geben Sie Folgendes ein:

wt -p "Ubuntu-18.04"

Verwenden Sie das -p Kennzeichen, um das Windows Terminal-Profil anzugeben, das Sie öffnen möchten. Ersetzen Sie "Ubuntu-18.04" durch den Namen eines beliebigen Terminalprofils, das Sie installiert haben. Mit diesem Befehl wird immer ein neues Fenster geöffnet. Um eine neue Shell-Registerkarte in einer vorhandenen (bereits geöffneten) Instanz von Windows Terminal zu öffnen, verwenden Sie: wt -w [window id](#options-and-commands) [executable name]. Öffnet beispielsweise wt -w 0 cmd eine Eingabeaufforderungsshell in der neuesten Instanz von Windows Terminal. Wenn Sie ein Profil starten (shell ausführbare Datei in Kombination mit Farbschema, Titel, Befehl und anderen Einstellungen, die steuern, wie es mit der Konsolensitzung interagiert), müssen Sie den Profilnamen im Befehl verwenden: wt -w 0 -p "Profile Name".

Ziel eines Verzeichnisses

Um den Ordner anzugeben, den die Konsole als Startverzeichnis verwendet, geben Sie den folgenden Befehl ein. In diesem Beispiel ist das Startverzeichnis das d:\ Verzeichnis:

wt -d d:\

Mehrere Registerkarten

Um eine neue Terminalinstanz mit mehreren Registerkarten zu öffnen, geben Sie Folgendes ein:

wt ; ;

Um eine neue Terminalinstanz mit mehreren Registerkarten zu öffnen, geben Sie in diesem Fall ein Eingabeaufforderungsprofil und ein PowerShell-Profil ein:

wt -p "Command Prompt" ; new-tab -p "Windows PowerShell"

Mehrere Bereiche

Um eine neue Terminalinstanz mit einer Registerkarte mit drei Bereichen zu öffnen, die ein Eingabeaufforderungsprofil, ein PowerShell-Profil und Ihr Standardprofil mit einer WSL-Befehlszeile ausführen, geben Sie Folgendes ein:

wt -p "Command Prompt" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe

Das -H Kennzeichen (oder --horizontal) gibt an, dass die Bereiche horizontal geteilt werden sollen. Das -V Kennzeichen (oder --vertical) gibt an, dass die Bereiche vertikal geteilt werden sollen.

Mehrere Registerkarten und Bereiche

Reihen Sie die new-tab und split-pane Befehle, um mehrere Registerkarten abzurufen, und jeweils mit geteilten Bereichen. Um eine neue Terminalinstanz mit zwei Registerkarten zu öffnen, geben Sie jeweils zwei Bereiche mit einer Eingabeaufforderung und einer WSL-Befehlszeile ein, wobei jede Registerkarte in einem anderen Verzeichnis:

wt -p "Command Prompt" ; split-pane -V wsl.exe ; new-tab -d c:\ ; split-pane -H -d c:\ wsl.exe

Bereichstitel

Verwenden Sie das --title Argument, um eine neue Terminalinstanz mit benutzerdefinierten Titeln für jeden Terminalbereich zu öffnen. Um den Titel jedes Bereichs beim Öffnen mehrerer Registerkarten festzulegen, geben Sie Folgendes ein:

wt --title tabname1 ; new-tab -p "Ubuntu-18.04" --title tabname2

Bereiche auf derselben Registerkarte können unterschiedliche Titel aufweisen. Der Registerkartentitel zeigt den Titel des Fensters an, das den Fokus hat. Um unabhängige Bereiche zu benennen, legen Sie den Titel nach dem Teilen der Bereiche fest, indem Sie Folgendes eingeben:

wt --title pane1 ; split-pane -p "Command Prompt" --title pane2

Verwenden des Anwendungstitels

Wenn Sie eine neue Terminalinstanz öffnen möchten, mit der Anwendungen den Registerkartentitel festlegen können, indem Sie Nachrichten zum Ändern von Titeln senden, verwenden Sie die --useApplicationTitle Kennzeichnung. Verwenden Sie die --suppressApplicationTitle Kennzeichnung, um diese Nachrichten zu unterdrücken. Wenn Sie keine Kennzeichnung angeben, verwendet das Terminal die Profileinstellungen. Um eine Registerkarte mit dem Titel tabname zu öffnen, den die Anwendung nicht überschreibt, geben Sie Folgendes ein:

wt --title tabname --suppressApplicationTitle

Tabstoppfarbe

Verwenden Sie das --tabColor Argument, um eine neue Terminalinstanz mit benutzerdefinierten Registerkartenfarben zu öffnen. Dieses Argument setzt den im Profil definierten Wert außer Kraft, die Registerkartenfarbauswahl kann ihn aber auch überschreiben. Im folgenden Beispiel wird ein neues Terminal mit zwei Registerkarten unterschiedlicher Farben erstellt:

wt --tabColor #009999 ; new-tab --tabColor #f59218

Wenn Sie für eine Registerkarte festlegen --tabColor , ordnen Sie sie dem ersten Bereich dieser Registerkarte zu. Daher wird auf einer Registerkarte mit mehreren Bereichen die Farbe nur angewendet, wenn sich der erste Bereich im Fokus befindet. Um die Registerkartenfarbe für zusätzliche Bereiche festzulegen, müssen Sie auch den --tabColor Parameter zum split-pane Unterbefehl hinzufügen. Im folgenden Beispiel wird eine Registerkarte mit zwei Bereichen mit Registerkartenfarben erstellt, die für jeden Bereich angegeben sind:

wt new-tab --tabColor '#009999' `; split-pane --tabColor '#f59218'

Farbschema

Verwenden Sie das colorScheme Argument, um eine neue Terminalinstanz mit einem bestimmten Farbschema (anstelle des --colorScheme Im Profils) zu öffnen. Dieses Argument setzt den im Profil definierten Wert außer Kraft.

wt --colorScheme Vintage ; split-pane --colorScheme "Tango Light"

Tabstoppfokus

Wenn Sie eine neue Terminalinstanz mit einer bestimmten Registerkarte im Fokus öffnen möchten, verwenden Sie das -t Flag (oder --target) zusammen mit der Registerindexnummer. Um Ihr Standardprofil auf der ersten Registerkarte zu öffnen und das Profil "Ubuntu-18.04" auf der zweiten Registerkarte (-t 1) zu öffnen, geben Sie Folgendes ein:

wt ; new-tab -p "Ubuntu-18.04" ; focus-tab -t 1

Beispiele für mehrere Befehle aus PowerShell

Windows Terminal verwendet das Semikolon als ; Trennzeichen zum Trennen von Befehlen in der wt Befehlszeile. Leider verwendet ; PowerShell auch als Befehlstrennzeichen. Um dieses Problem zu umgehen, verwenden Sie die folgenden Tricks, um mehrere wt Befehle aus PowerShell auszuführen. In allen folgenden Beispielen wird ein neues Terminalfenster mit drei Bereichen erstellt – einer mit der Eingabeaufforderung, einer mit PowerShell und dem letzten, in dem WSL ausgeführt wird.

In den folgenden Beispielen wird start nicht verwendet, um die Befehlszeile auszuführen. Stattdessen verwenden sie zwei andere Methoden, um die Befehlszeile zu umgehen:

  • Nur die Semikolons maskieren, damit PowerShell sie ignoriert und direkt an wt weiterleitet.
  • Verwenden Sie --%, damit PowerShell den Rest der Befehlszeile als Argumente für die Anwendung behandelt.
wt new-tab "cmd" `; split-pane -p "Windows PowerShell" `; split-pane -H wsl.exe
wt --% new-tab cmd ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe

In beiden Beispielen analysiert das neu erstellte Windows Terminal-Fenster alle bereitgestellten Befehlszeilenargumente ordnungsgemäß.

Diese Methoden werden jedoch derzeit nicht empfohlen. PowerShell wartet, bis das neu erstellte Terminalfenster geschlossen wird, bevor das Steuerelement an PowerShell zurückgegeben wird. Standardmäßig wartet PowerShell immer, bis Windows Store-Anwendungen (z. B. Windows Terminal) geschlossen werden, bevor Sie zur Eingabeaufforderung zurückkehren. Dieses Verhalten unterscheidet sich vom Verhalten des Eingabeaufforderungsfensters, das sofort wieder zum Eingabebereich zurückkehrt.

Hinzufügen der ausführbaren Windows-Terminal-Datei zu Ihrem PATH

Um die ausführbare Windows Terminal-Datei (wt.exe) zu Ihrem PATH hinzuzufügen, aktivieren Sie den "App-Ausführungsalias" auf der Seite " App-Ausführungsaliasen verwalten" der Windows-Einstellungen. Der Windows Terminal-Alias ist standardmäßig aktiviert, er kann jedoch überprüft werden, wenn Probleme beim Zugriff darauf auftreten.

Wenn weiterhin Probleme beim Zugriff auf App-Ausführungsaliasen auftreten, überprüfen Sie, ob Ihr PATH Folgendes enthält: %LOCALAPPDATA%\Microsoft\WindowsApps. Nehmen Sie keine Änderungen an C:\Program Files\WindowsApps vor.

Windows-Einstellungen für App-Ausführungsaliasen