Uso degli argomenti della riga di comando per Terminale Windows

Per aprire una nuova istanza di Terminale Windows dalla riga di comando, puoi usare wt.exe. In alternativa, puoi anche usare l'alias di esecuzione wt.

Nota

Se Terminale Windows è stato creato dal codice sorgente disponibile in GitHub, è possibile aprire tale build usando wtd.exe o wtd.

Windows Terminal command line argument for split panes

Sintassi della riga di comando

La riga di comando wt accetta due tipi di valori, ovvero opzioni e comandi. Le opzioni sono un elenco di flag e di altri parametri che controllano il comportamento della riga di comando wt nel complesso. I comandi forniscono l'azione, o l'elenco di azioni delimitate da punti e virgola, che è necessario implementare. Se non specifichi un comando, per impostazione predefinita viene usato new-tab.

wt [options] [command ; ]

Nota

Il comportamento del comando wt.exe può essere influenzato dalla proprietà windowingBehavior. Questa impostazione può essere modificata per impostazione predefinita tra l'apertura di una nuova finestra o l'apertura di una nuova scheda.

Per visualizzare un messaggio della Guida con l'elenco degli argomenti della riga di comando, immetti wt -h, wt --help, wt -? o wt /?.

Opzioni e comandi

Di seguito è riportato l'elenco completo di opzioni e comandi supportati per la riga di comando wt.

Opzione Descrizione
--help, -h, -?, /? Visualizza il messaggio della Guida.
--maximized, -M Avvia il terminale ingrandito.
--fullscreen, -F Avvia il terminale a schermo intero.
--focus, -f Avvia il terminale in modalità stato attivo. Può essere utilizzata in combinazione con maximized.
--pos x,y Avvia il terminale nella posizione specificata. x o y può essere omesso, per usare il valore predefinito dalle impostazioni.
--size c,r Avvia il terminale con il numero specificato di colonne (c) e righe (r).
--window, -w window-id Esegue il comando specificato in una finestra specifica.

Il parametro --window può essere usato per inviare comandi alle finestre del terminale esistenti.

window-id può essere l'ID intero di una finestra o il nome di una finestra. Accetta anche i valori riservati seguenti:

  • new o -1: eseguire sempre questo comando in una nuova finestra
  • last o 0: eseguire sempre questo comando nella finestra usata più di recente

Se non esiste alcuna finestra con l'oggetto specificato window-id, verrà creata una nuova finestra con tale ID/nome.

Ad esempio, l'esecuzione di wt -w _quake aprirà una nuova "finestra di quake". L'esecuzione di questo comando aprirà di nuovo una nuova scheda nella finestra di quake esistente.

Comando Nuova scheda

Utilizzato per creare una nuova scheda. Vedere anche l'azione newTab.

Comando Parametro Descrizione Valori
new-tab, nt --profile, -p profile-name Crea una nuova scheda in base al nome del profilo assegnato. Nome profilo
new-tab, nt --startingDirectory, -d starting-directory Crea una nuova scheda in base al percorso della directory iniziale assegnato. Percorso directory
new-tab, nt commandline Crea una nuova scheda in base alla riga di comando assegnata. Eseguibile con comandi facoltativi
new-tab, nt --title Crea una nuova scheda con il titolo assegnato. Testo da usare come titolo della scheda
new-tab, nt --tabColor Crea una nuova scheda con il colore della scheda assegnato. Colore esadecimale come #RGB o #RRGGBB
new-tab, nt --suppressApplicationTitle Eseguire l'override dell'impostazione suppressApplicationTilte del profilo e impostarla su true
new-tab, nt --useApplicationTitle Eseguire l'override dell'impostazione suppressApplicationTilte del profilo e impostarla su false
new-tab, nt --colorScheme scheme-name Eseguire l'override dell'impostazione colorScheme del profilo e impostarla sullo schema dalle impostazioni con il nome scheme-name Nome di una combinazione di colori nelle impostazioni

Suggerimento

Se si modifica il titolo di una scheda in Terminale Windows e si vuole rendere persistente il titolo, è necessario abilitare l'opzione suppressApplicationTitle impostandola su true.

Comando Riquadro di divisione

Usato per creare un nuovo riquadro di divisione. Vedere anche l'azione splitPane.

Comando Parametro Descrizione Valori
split-pane, sp -H, --horizontal, -V, --vertical Crea un nuovo riquadro di finestra divisa orizzontalmente o verticalmente. N/D. Nessun valore aggiuntivo da assegnare.
split-pane, sp --profile, -p profile-name Crea un nuovo riquadro di finestra divisa in base al profilo della riga di comando assegnato. Se questo parametro non è assegnato, verrà usato il profilo predefinito. Nome profilo
split-pane, sp --startingDirectory, -d starting-directory Crea un nuovo riquadro di finestra divisa in base al percorso della directory iniziale assegnato. Se questo parametro non è assegnato, verrà usata la directory iniziale predefinita. Percorso directory
split-pane, sp --title Crea un nuovo riquadro di finestra divisa con il titolo assegnato. Testo da usare come titolo della scheda
split-pane, sp --tabColor Crea un nuovo riquadro di finestra divisa con il colore della scheda assegnato. Colore esadecimale come #RGB o #RRGGBB
split-pane, sp --size, -s size Crea un nuovo riquadro di finestra divisa con le dimensioni assegnate. Valore mobile che specifica la parte del riquadro padre da utilizzare rappresentata da un separatore decimale. Ad esempio, .4 per rappresentare il 40% del riquadro padre.
split-pane, sp commandline Crea un nuovo riquadro di finestra divisa in base alla riga di comando assegnata. Eseguibile con comandi facoltativi
split-pane, sp --duplicate, -D Crea un nuovo riquadro di finestra divisa duplicato del riquadro corrente. N/D. Nessun valore aggiuntivo da assegnare.
split-pane, sp --suppressApplicationTitle Eseguire l'override dell'impostazione suppressApplicationTilte del profilo e impostarla su true
split-pane, sp --useApplicationTitle Eseguire l'override dell'impostazione suppressApplicationTilte del profilo e impostarla su false
split-pane, sp --colorScheme scheme-name Eseguire l'override dell'impostazione colorScheme del profilo e impostarla sullo schema dalle impostazioni con il nome scheme-name Nome di una combinazione di colori nelle impostazioni

Comando scheda attiva

Consente di concentrarsi su una scheda specifica all'interno della finestra. Vedere anche l'azione switchToTab.

Comando Parametro Descrizione Valori
focus-tab, ft --target, -t tab-index Si concentra su una scheda specifica in base al numero di indice di tabulazioni. Indice tabulazione come intero

Comando Sposta stato attivo

Utilizzato per spostare lo stato attivo all'interno della finestra. Vedere anche l'azione moveFocus.

Comando Parametro Descrizione Valori
move-focus, mf <direction> Spostare lo stato attivo tra riquadri. Vedere di seguito per i valori direction accettati

Valori direction accettati

  • up, down, left o right spostare lo stato attivo nella direzione specificata.
  • first sposta lo stato attivo sul primo riquadro foglia dell'albero.
  • previous sposta lo stato attivo sul riquadro usato più di recente prima del riquadro corrente.
  • nextInOrder, previousInOrder sposta lo stato attivo sul riquadro successivo o precedente in ordine di creazione.

Comando Sposta riquadro

Consente di spostare un riquadro all'interno della finestra. Vedere anche l'azione movePane.

Comando Parametro Descrizione Valori
move-pane, mp --tab,-t <index> Spostare il riquadro attivo nella scheda specificata nella finestra Indice indicizzato su zero della scheda in cui spostare il riquadro.

Comando Scambia riquadro

Utilizzato per scambiare la posizione di due riquadri all'interno della finestra. Vedere anche l'azione swapPane.

Comando Parametro Descrizione Valori
swap-pane <direction> Scambiare il riquadro con il riquadro nella direzione specificata Vedere di seguito per i valori direction accettati

Valori direction accettati (questi sono gli stessi valori del comando secondario move-focus)

  • up, down, lefto right: scambia il riquadro attivo con quello nella direzione specificata.
  • first: scambia il riquadro attivo con il primo riquadro foglia nell'albero.
  • previous: scambia il riquadro attivo con il riquadro usato più di recente prima del riquadro corrente.
  • nextInOrder, previousInOrder: scambia il riquadro attivo con il riquadro successivo o precedente in ordine di creazione.

Esempi di argomenti della riga di comando

I comandi possono variare leggermente a seconda della riga di comando che usi.

Passaggio di un argomento alla shell predefinita

Per avviare un'istanza di Terminale Windows ed eseguire un comando, chiamare wt.exe seguito dal comando.

Di seguito è riportato un esempio di chiamata Terminale Windows per passare un argomento di comando ping per eseguire l'eco di un indirizzo IP:

wt ping learn.microsoft.com

Ecco un esempio di chiamata Terminale Windows per aprire una nuova scheda con una riga di comando di PowerShell, confermando di chiamare il comando Start-Service e aprendo un'altra nuova scheda con il prompt dei comandi di Windows aperto alla directory /k:

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

Specificare come destinazione una finestra specifica

Di seguito sono riportati alcuni esempi di come specificare la destinazione di finestre specifiche usando l'opzione --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

Aprire una nuova istanza del profilo

Per aprire una nuova istanza del terminale, in questo caso il comando aprirà il profilo denominato "Ubuntu-18.04", immetti:

wt -p "Ubuntu-18.04"

Il flag -p si usa per specificare il profilo di Terminale Windows da aprire. Sostituisci "Ubuntu-18.04" con il nome di un profilo di terminale installato. Verrà sempre aperta una nuova finestra. Terminale Windows non è ancora in grado di aprire nuove schede o riquadri in un'istanza esistente.

Directory di destinazione

Per specificare la cartella da usare come directory iniziale della console, in questo caso la directory d:\, immetti:

wt -d d:\

Più schede

Per aprire una nuova istanza del terminale con più schede, immetti:

wt ; ;

Per aprire una nuova istanza del terminale con più schede, in questo caso un profilo del prompt dei comandi e un profilo di PowerShell, immetti:

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

Più riquadri

Per aprire una nuova istanza del terminale con una scheda contenente tre riquadri eseguendo un profilo del prompt dei comandi, un profilo di PowerShell e il profilo predefinito che esegue una riga di comando WSL, immetti:

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

Il flag -H (o --horizontal) indica che i riquadri devono essere divisi orizzontalmente. Il flag -V (o --vertical) indica che i riquadri devono essere divisi verticalmente.

Più schede e riquadri

I comandi new-tab e split-pane possono essere sequenziati per ottenere più schede, ognuna con riquadri suddivisi. Per aprire una nuova istanza del terminale con due schede, ognuna con due riquadri che eseguono un prompt dei comandi e una riga di comando WSL con ogni scheda in una directory diversa, immettere:

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

Titolo riquadro

Per aprire una nuova istanza del terminale con titoli personalizzati per ogni riquadro, usare l'argomento --title. Per impostare il titolo di ogni riquadro all'apertura di più schede, immettere:

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

I riquadri nella stessa scheda possono avere titoli diversi, che rifletteranno il titolo della scheda a seconda del riquadro con stato attivo. Per denominare riquadri indipendenti, è possibile impostare il titolo dopo aver suddiviso i riquadri immettendo:

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

Utilizzo del titolo dell'applicazione

Per aprire una nuova istanza del terminale che consente alle applicazioni al suo interno di impostare il titolo della scheda inviando messaggi di modifica del titolo, usare il flag --useApplicationTitle. Per eliminare questi messaggi, usare il flag --suppressApplicationTitle. Se nessuno di questi flag viene fornito, il comportamento viene ereditato dalle impostazioni del profilo. Per aprire una scheda con titolo tabname che non verrà sottoposta a override dall'applicazione, immettere:

wt --title tabname --suppressApplicationTitle

Colore delle schede

Per aprire una nuova istanza del terminale con colori di schede personalizzati, usare l'argomento --tabColor. Questo argomento esegue l'override del valore definito nel profilo, ma può essere sottoposto a override anche usando la selezione colori scheda. Nell'esempio seguente viene creato un nuovo terminale con due schede di colori diversi:

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

Quando --tabColor è impostato per una scheda, viene associato al primo riquadro di questa scheda. Di conseguenza, in una scheda con più riquadri, il colore verrà applicato solo se il primo riquadro è attivo. Per impostare il colore della scheda per i riquadri aggiuntivi, è necessario aggiungere anche il parametro --tabColor al sottocomando split-pane. Nell'esempio seguente viene creata una scheda con due riquadri con i colori delle schede specificati per ogni riquadro:

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

Combinazione colori

Per aprire una nuova istanza del terminale con una combinazione di colori specifica (anziché il set colorScheme nel profilo), usare l'argomento --colorScheme. Questo argomento esegue l'override del valore definito nel profilo.

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

Stato attivo della scheda

Per aprire una nuova istanza del terminale con lo stato attivo su una specifica scheda, usa il flag -t (o --target), insieme al numero dell'indice di tabulazione. Per aprire il profilo predefinito nella prima scheda e il profilo "Ubuntu-18.04" con lo stato attivo nella seconda scheda (-t 1), immetti:

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

Esempi di più comandi immessi da PowerShell

Terminale Windows usa il carattere punto e virgola ; come delimitatore per separare i comandi nella riga di comando wt. Però anche PowerShell usa ; come separatore di comandi. Per ovviare a questo problema, puoi usare i suggerimenti seguenti per eseguire più comandi wt da PowerShell. In tutti gli esempi seguenti viene creata una nuova finestra del terminale con tre riquadri, uno che esegue il prompt dei comandi, uno PowerShell e l'ultimo WSL.

Gli esempi seguenti non usano start per eseguire la riga di comando. Esistono invece altri due metodi per l'escape della riga di comando:

  • Esegui l'escape solo dei punti e virgola in modo che PowerShell li ignorerà e li passerà direttamente a wt.
  • Usa --%, in modo che PowerShell consideri il resto della riga di comando come argomenti per l'applicazione.
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 entrambi questi esempi la finestra di Terminale Windows verrà creata con l'analisi corretta di tutti gli argomenti della riga di comando specificati.

Tuttavia, questi metodi non sono attualmente consigliati, perché PowerShell aspetterà che la finestra del terminale appena creata venga chiusa prima di restituire il controllo a PowerShell. Per impostazione predefinita, PowerShell aspetterà che le applicazioni di Windows Store, come Terminale Windows, vengano chiuse prima di tornare al prompt. Nota che questo comportamento è diverso da quello del prompt dei comandi, che tornerà immediatamente al prompt.

Aggiungere l'eseguibile del Terminale Windows a PATH

Per aggiungere il file eseguibile Terminale Windows (wt.exe) a PATH, abilitare il relativo "alias di esecuzione dell'app" nella pagina Gestisci alias di esecuzione dell'app delle impostazioni di Windows. L'alias Terminale Windows è attivato per impostazione predefinita, ma può essere utile confermare l'impostazione se si verificano problemi di accesso.

Se si verificano ancora problemi di accesso agli alias di esecuzione dell'app, potrebbe essere necessario verificare se PATH contiene: %LOCALAPPDATA%\Microsoft\WindowsApps. Non tentare di apportare modifiche a C:\Program Files\WindowsApps.

Windows Settings for App Execution Aliases