Utilisation des arguments de ligne de commande pour le Terminal Windows

Vous pouvez utiliser wt.exe pour ouvrir une nouvelle instance de Terminal Windows à partir de la ligne de commande. Vous pouvez également utiliser l’alias d’exécution wt à la place.

Notes

Si vous avez généré Terminal Windows à partir du code source sur GitHub, vous pouvez ouvrir cette build à l’aide de wtd.exe ou de wtd.

Windows Terminal command line argument for split panes

Syntaxe de la ligne de commande

La ligne de commande wt accepte deux types de valeurs : options et commandes. Les options constituent une liste d’indicateurs et autres paramètres qui peuvent contrôler le comportement de la ligne de commande wt dans son ensemble. Les commandes fournissent l’action ou la liste des actions séparées par des points-virgules, qui doivent être implémentées. Si aucune commande n’est spécifiée, la commande est supposée être new-tab par défaut.

wt [options] [command ; ]

Notes

Le comportement de la commande wt.exe peut être affecté par la propriété windowingBehavior. Ce paramètre peut être ajusté par défaut entre l’ouverture d’une nouvelle fenêtre ou l’ouverture d’un nouvel onglet.

Pour afficher un message d’aide répertoriant les arguments de ligne de commande disponibles, entrez : wt -h, wt --help, wt -? ou wt /?.

Options et commandes

Vous trouverez ci-dessous la liste complète des commandes et options prises en charge pour la ligne de commande wt.

Option Description
--help, -h, -?, /? Affiche le message d’aide.
--maximized, -M Lance le terminal agrandi.
--fullscreen, -F Lance le terminal en plein écran.
--focus, -f Lance le terminal en mode Focus. Peut être combiné avec maximized.
--pos x,y Lance le terminal à la position donnée. Vous pouvez omettre x ou y pour utiliser la valeur par défaut des paramètres.
--size c,r Lance le terminal avec le nombre de colonnes (c) et de lignes (r) spécifiées.
--window, -w window-id Exécute la commande donnée dans une fenêtre spécifique.

Le paramètre --window peut être utilisé pour envoyer des commandes à des fenêtres de terminal existantes.

window-id peut correspondre à l’ID entier d’une fenêtre ou au nom d’une fenêtre. Il accepte également les valeurs réservées suivantes :

  • new ou -1 : toujours exécuter cette commande dans une nouvelle fenêtre
  • last ou 0 : toujours exécuter cette commande dans la dernière fenêtre utilisée

Si aucune fenêtre ne correspond au window-id donné, une fenêtre est créée avec cet ID ou ce nom.

Par exemple, la commande wt -w _quake ouvre une nouvelle « fenêtre en mode Quake » Si vous réexécutez cette commande, un nouvel onglet s’ouvre dans la fenêtre existante en mode Quake.

Commande new-tab

Permet de créer un onglet. Voir aussi l’action newTab.

Commande Paramètre Description Valeurs
new-tab, nt --profile, -p profile-name Crée un onglet en fonction du nom de profil affecté. Nom de profil
new-tab, nt --startingDirectory, -d starting-directory Crée un onglet en fonction du chemin du répertoire de départ affecté. Chemin du répertoire
new-tab, nt commandline Crée un onglet en fonction de la ligne de commande affectée. Exécutable avec des commandes facultatives
new-tab, nt --title Crée un onglet avec le titre affecté. Texte à utiliser comme titre de l’onglet
new-tab, nt --tabColor Crée un onglet avec la couleur d’onglet affectée. Couleur hexadécimale #RGB ou #RRGGBB
new-tab, nt --suppressApplicationTitle Remplace le paramètre suppressApplicationTilte du profil et lui affecte la valeur true.
new-tab, nt --useApplicationTitle Remplace le paramètre suppressApplicationTilte du profil et lui affecte la valeur false.
new-tab, nt --colorScheme scheme-name Remplace le paramètre colorScheme du profil et lui affecte le modèle nommé scheme-name dans les paramètres. Nom d’un modèle de couleurs dans les paramètres

Conseil

Si vous modifiez le titre d’un onglet dans le Terminal Windows et que vous souhaitez conserver ce titre, vous devez activer l’option suppressApplicationTitle en lui affectant la valeur true.

Commande split-pane

Permet de créer un volet divisé. Voir aussi l’action splitPane.

Commande Paramètre Description Valeurs
split-pane, sp -H, --horizontal, -V, --vertical Crée un volet de fenêtre divisé horizontalement ou verticalement. N/A. Aucune valeur supplémentaire à affecter.
split-pane, sp --profile, -p profile-name Crée un volet de fenêtre divisé en fonction du profil de ligne de commande affecté. Si ce paramètre n’est pas affecté, le profil par défaut est utilisé. Nom de profil
split-pane, sp --startingDirectory, -d starting-directory Crée un volet de fenêtre divisé en fonction du chemin du répertoire de départ affecté. Si ce paramètre n’est pas affecté, le répertoire de départ par défaut est utilisé. Chemin du répertoire
split-pane, sp --title Crée un volet de fenêtre divisé avec le titre affecté. Texte à utiliser comme titre de l’onglet
split-pane, sp --tabColor Crée un volet de fenêtre divisé avec la couleur d’onglet affectée. Couleur hexadécimale #RGB ou #RRGGBB
split-pane, sp --size, -s size Crée un volet de fenêtre divisé avec la taille affectée. Float qui spécifie la partie du volet parent à utiliser représentée par un décimal. Par exemple, .4 pour représenter 40 % du volet parent.
split-pane, sp commandline Crée un volet de fenêtre divisé basé sur le profil de ligne de commande affecté. Exécutable avec des commandes facultatives
split-pane, sp --duplicate, -D Crée un volet de fenêtre divisé qui est un doublon du volet actuel. N/A. Aucune valeur supplémentaire à affecter.
split-pane, sp --suppressApplicationTitle Remplace le paramètre suppressApplicationTilte du profil et lui affecte la valeur true.
split-pane, sp --useApplicationTitle Remplace le paramètre suppressApplicationTilte du profil et lui affecte la valeur false.
split-pane, sp --colorScheme scheme-name Remplace le paramètre colorScheme du profil et lui affecte le modèle nommé scheme-name dans les paramètres. Nom d’un modèle de couleurs dans les paramètres

Commande focus-tab

Permet de déplacer le focus sur un onglet spécifique de la fenêtre. Voir aussi l’action switchToTab.

Commande Paramètre Description Valeurs
focus-tab, ft --target, -t tab-index Met le focus sur un onglet spécifique en fonction du numéro d’index de l’onglet. Index d’onglet au format entier

Commande move-focus

Permet de déplacer le focus dans la fenêtre. Voir aussi l’action moveFocus.

Commande Paramètre Description Valeurs
move-focus, mf <direction> Déplace le focus entre les volets. Voir les valeurs direction acceptées ci-dessous.

Valeurs direction acceptées

  • up, down, left ou right : déplace le focus dans la direction donnée.
  • first : déplace le focus sur le premier volet de nœud terminal dans l’arborescence.
  • previous : déplace le focus sur le dernier volet utilisé avant le volet actif.
  • nextInOrder ou previousInOrder : déplace le focus sur le volet suivant ou précédent selon l’ordre de création.

Commande move-pane

Permet de déplacer un volet dans la fenêtre. Voir aussi l’action movePane.

Commande Paramètre Description Valeurs
move-pane, mp --tab,-t <index> Déplace le volet actif sur l’onglet donné dans la fenêtre. Index indexé à zéro de l’onglet vers lequel déplacer le volet.

Commande swap-pane

Permet de permuter la position de deux volets dans la fenêtre. Voir aussi l’action swapPane.

Commande Paramètre Description Valeurs
swap-pane <direction> Permute le volet avec le volet situé dans la direction donnée. Voir les valeurs direction acceptées ci-dessous.

Valeurs direction acceptées (valeurs identiques à celles de la sous-commande move-focus)

  • up, down, left ou right : permute le volet actif avec le volet situé dans la direction donnée.
  • first : permute le volet actif avec le premier volet de nœud terminal de l’arborescence.
  • previous : permute le volet actif avec le dernier volet utilisé avant le volet actif.
  • nextInOrder ou previousInOrder : permute le volet actif avec le volet suivant ou précédent selon l’ordre de création.

Exemples d’argument de ligne de commande

Les commandes peuvent varier légèrement en fonction de la ligne de commande que vous utilisez.

Passage d’un argument au shell par défaut

Pour démarrer une instance du Terminal Windows et lui faire exécuter une commande, appelez wt.exe suivi de votre commande.

Voici un exemple montrant comment appeler le Terminal Windows pour passer un argument de commande ping et retourner une adresse IP :

wt ping learn.microsoft.com

Voici un exemple montrant comment appeler le Terminal Windows pour ouvrir un nouvel onglet avec une ligne de commande PowerShell, confirmer l’appel de la commande Start-Service et ouvrir un autre onglet avec l’invite de commandes Windows ouverte sur le répertoire /k :

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

Cibler une fenêtre spécifique

Vous trouverez ci-dessous des exemples montrant comment cibler des fenêtres spécifiques avec l’option --window,-w.

// 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

Ouvrir une nouvelle instance de profil

Pour ouvrir une nouvelle instance de terminal, dans le cas présent, la commande ouvre le profil nommé « Ubuntu-18,04 », entrez :

wt -p "Ubuntu-18.04"

L’indicateur -p est utilisé pour spécifier quel profil de Terminal Windows ouvrir. Remplacez « Ubuntu-18.04 » par le nom d’un profil terminal que vous avez installé. Cela ouvrira toujours une nouvelle fenêtre. Le Terminal Windows ne peut pas encore ouvrir de nouveaux onglets ou volets dans une instance existante.

Cibler un répertoire

Pour spécifier le dossier qui doit être utilisé comme répertoire de démarrage de la console, dans le cas présent, le répertoire d:/, entrez :

wt -d d:\

Plusieurs onglets

Pour ouvrir une nouvelle instance de terminal avec plusieurs onglets, entrez :

wt ; ;

Pour ouvrir une nouvelle instance de terminal avec plusieurs onglets, dans le cas présent un profil d’invite de commandes et un profil PowerShell, entrez :

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

Plusieurs volets

Pour ouvrir une nouvelle instance de terminal avec un onglet contenant trois volets exécutant un profil d’invite de commandes, un profil PowerShell et votre profil par défaut exécutant une ligne de commande WSL, entrez :

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

L’indicateur -H (ou --horizontal) indique que vous souhaitez que les volets soient fractionnés horizontalement. L’indicateur -V (ou --vertical) indique que vous souhaitez que les volets soient fractionnés verticalement.

Onglets et volets multiples

Les commandes new-tab et split-pane peuvent être séquencées pour recevoir plusieurs onglets, chacun ayant des volets divisés. Pour ouvrir une nouvelle instance de terminal avec deux onglets, chaque onglet ayant un répertoire différent et comprenant deux volets qui exécutent une invite de commandes et une ligne de commande WSL, entrez :

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

Titre du volet

Pour ouvrir une nouvelle instance de terminal avec des titres personnalisés pour chaque volet de terminal, utilisez l'argument --title. Pour définir le titre de chaque volet lors de l'ouverture de plusieurs onglets, saisissez :

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

Les volets d'un même onglet peuvent avoir des titres différents, qui se refléteront sur le titre de l'onglet en fonction du volet sélectionné. Pour nommer des volets indépendants, vous pouvez définir le titre après avoir divisé les volets en saisissant :

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

Utilisation du titre de l’application

Pour ouvrir une nouvelle instance de terminal permettant aux applications qui s’y trouvent de définir le titre de l’onglet en envoyant des messages de changement de titre, utilisez l’indicateur --useApplicationTitle. Pour supprimer ces messages, utilisez l’indicateur --suppressApplicationTitle. Si aucun de ces indicateurs n’est fourni, le comportement est hérité des paramètres du profil. Pour ouvrir un onglet avec un titre tabname qui ne sera pas remplacé par l’application, entrez :

wt --title tabname --suppressApplicationTitle

Couleur de l’onglet

Pour ouvrir une nouvelle instance de terminal avec des couleurs d’onglet personnalisées, utilisez l’argument --tabColor. Cet argument remplace la valeur définie dans le profil, mais peut également être substituée à l’aide du sélecteur de couleurs d’onglet. Dans l’exemple suivant, un terminal est créé avec deux onglets de couleurs différentes :

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

Quand l’argument --tabColor est défini pour un onglet, il est associé au premier volet de cet onglet. Dans un onglet à plusieurs volets, la couleur n’est donc appliquée que si le premier volet a le focus. Pour définir la couleur d’onglet pour d’autres volets, vous devez également ajouter le paramètre --tabColor à la sous-commande split-pane. Dans l’exemple ci-dessous, un onglet avec deux volets est créé avec les couleurs d’onglet spécifiées pour chaque volet :

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

Modèle de couleurs

Pour ouvrir une nouvelle instance de terminal avec un modèle de couleurs spécifique (au lieu du colorScheme défini dans le profil), utilisez l’argument --colorScheme. Cet argument remplace la valeur définie dans le profil.

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

Focus de tabulation

Pour ouvrir une nouvelle instance de terminal avec un onglet spécifique en focus, utilisez l’indicateur -t (ou --target), ainsi que le numéro d’index de tabulation. Pour ouvrir votre profil par défaut dans le premier onglet et dans le profil « Ubuntu-18,04 » mis en focus dans le deuxième onglet (-t 1), entrez :

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

Exemples de commandes multiples à partir de PowerShell

Terminal Windows utilise le point-virgule ; comme délimiteur pour séparer les commandes dans la ligne de commande wt. Malheureusement, PowerShell utilise également ; comme séparateur de commandes. Pour contourner ce problème, vous pouvez utiliser les astuces suivantes pour exécuter plusieurs commandes wt à partir de PowerShell. Dans tous les exemples suivants, une nouvelle fenêtre de terminal est créée avec trois volets : l’un exécutant l’invite de commandes, l’autre s’exécutant avec PowerShell et le dernier exécutant WSL.

Les exemples suivants n’utilisent pas start pour exécuter la ligne de commande. Au lieu de cela, il existe deux autres méthodes d’échappement de la ligne de commande :

  • Il suffit de traiter littéralement les points-virgules afin que PowerShell les ignore et les transmettent directement à wt.
  • Si vous utilisez --%, PowerShell traitera le reste de la ligne de commande comme des arguments pour l’application.
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

Dans ces deux exemples, la fenêtre de Terminal Windows nouvellement créée crée la fenêtre en analysant correctement tous les arguments de ligne de commande fournis.

Toutefois, ces méthodes ne sont pas actuellement recommandées, car PowerShell attend la fermeture de la fenêtre de terminal nouvellement créée avant de restituer le contrôle à PowerShell. Par défaut, PowerShell attendra toujours que les applications du Windows Store (comme Terminal Windows) se ferment avant de revenir à l’invite. Notez que cela est différent du comportement de l’invite de commandes, qui retourne immédiatement à l’invite.

Ajoutez l’exécutable Windows Terminal à votre chemin

Pour ajouter le fichier exécutable Terminal Windows (wt.exe) à votre chemin, activez son « alias d’exécution d’application » dans la page Gérer les alias d’exécution d’application dans Paramètres Windows. L’alias Terminal Windows est activé par défaut, mais il peut être utile de le confirmer si vous rencontrez des problèmes pour y accéder.

Si vous avez toujours des difficultés à accéder aux alias d’exécution d’application, vérifiez si votre chemin contient %LOCALAPPDATA%\Microsoft\WindowsApps. N’essayez pas de modifier C:\Program Files\WindowsApps.

Windows Settings for App Execution Aliases