Utilizzando argomenti della riga di comando per il Terminale di Windows

  • 02/25/2021
  • 11 minuti a leggere
    • c
    • m
    • z
    • D
    • D
    • +1

È possibile utilizzare wt.exe per aprire una nuova istanza del Terminal di Windows da riga di comando. È inoltre possibile utilizzare l’alias di esecuzione wt.

Nota

Se hai creato Windows Terminal dal codice sorgente su GitHub, puoi aprire quella build usando wtd.exeo wtd.

Argomento della riga di comando del terminale di Windows per i riquadri divisi

Sintassi della riga di comando

La riga di comando wt accetta due tipi di valori: opzioni e comandi. Le opzioni sono un elenco di flag e altri parametri che possono controllare il comportamento della riga di comando wt nel suo complesso. I comandi forniscono l’azione o l’elenco di azioni separate da punti e virgola che devono essere implementate. Se non viene specificato alcun comando, si presume che il comando sia new-tab per impostazione predefinita.

wt 

Per visualizzare un messaggio di aiuto che elenca gli argomenti della riga di comando disponibili, immettere: wt -h, wt --help, wt -?, oppure wt /?.

Opzioni e comandi

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

Opzione Descrizione
--help, -h, -?, /? Visualizza il messaggio di aiuto.
--maximized, -M Avvia il terminale massimizzato.
--fullscreen, -F Avvia il terminale a schermo intero.
--focus, -f Avvia il terminale nella modalità di messa a fuoco. Può essere combinato con maximized.
--window, -w <window-id> Avvia il terminale in una finestra specifica.
Comando Parametri Descrizione
new-tab, nt --profile, -p profile-name, --startingDirectory, -d starting-directory, commandline, --title, --tabColor Crea una nuova scheda.
split-pane, sp -H, --horizontal, -V, --vertical, --profile, -p profile-name, --startingDirectory, -d starting-directory, --title, --tabColor, --size, -s size, commandline Divide un nuovo riquadro.
focus-tab, ft --target, -t tab-index Si concentra su una scheda specifica.
move-focus, mf direction Sposta la messa a fuoco tra i riquadri nella direzione indicata. Accetta uno dei up, down, left, right.

Nota

Quando si apre il terminale di Windows da cmd (prompt dei comandi), se si desidera utilizzare le impostazioni del profilo “cmd” personalizzate, è necessario utilizzare il comando wt -p cmd. In caso contrario, per eseguire le impostazioni predefinite del profilo, basta usare wt cmd.

Esempi di argomenti della riga di comando

I comandi possono variare leggermente a seconda della riga di comando che si sta utilizzando.

Destinazione di una finestra specifica

Di seguito sono riportati esempi di come indirizzare finestre specifiche utilizzando l’opzione --window,-w.

  • Prompt dei comandi
  • PowerShell
  • Linux
// Open a new tab with the default profile in the current windowwt -w 0 nt// Open a new tab in a new window with the default profilewt -w -1 nt// Open a new tab in the first-created terminal window with the default profilewt -w 1 nt
// Open a new tab with the default profile in the current windowwt -w 0 nt// Open a new tab in a new window with the default profilewt -w -1 nt// Open a new tab in the first-created terminal window with the default profilewt -w 1 nt
// Open a new tab with the default profile in the current windowcmd.exe /c "wt.exe" -w 0 nt// Open a new tab in a new window with the default profilecmd.exe /c "wt.exe" -w -1 nt// Open a new tab in the first-created terminal window with the default profilecmd.exe /c "wt.exe" -w 1 nt

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione.

Aprire un nuovo profilo di istanza

Per aprire un nuovo terminale istanza, in questo caso, il comando si aprirà il profilo denominato “Ubuntu-18.04”, immettere:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt -p "Ubuntu-18.04"
wt -p "Ubuntu-18.04"
cmd.exe /c "wt.exe" -p "Ubuntu-18.04"

Esecuzione alias non funzionano in WSL distribuzioni. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione.

Il flag -p viene utilizzato per specificare il profilo terminale di Windows che deve essere aperto. Sostituisci “Ubuntu-18.04” con il nome di qualsiasi profilo terminale che hai installato. Questo aprirà sempre una nuova finestra. Windows Terminal non è ancora in grado di aprire nuove schede o riquadri in un’istanza esistente.

Selezionare una directory

Per specificare la cartella da utilizzare come directory di partenza per la console, in questo caso la directory d:\, immettere:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt -d d:\
wt -d d:\
cmd.exe /c "wt.exe" -d d:\

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione.

Schede multiple

Per aprire una nuova istanza di terminale con più schede, immettere:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt ; ;
wt `; `;

PowerShell utilizza un punto e virgola ; per delimitare le istruzioni. Per interpretare un punto e virgola ; come delimitatore di comandi per gli argomenti della riga di comando wt, è necessario sfuggire ai caratteri punto e virgola usando i backtick. PowerShell ha anche l’operatore di analisi stop ( % % ), che lo istruisce a smettere di interpretare qualsiasi cosa dopo di esso e basta passarlo alla lettera.

cmd.exe /c "wt.exe" \; \;

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione.

Per aprire un nuovo terminale istanza con più schede, in questo caso un Prompt dei comandi profilo e un PowerShell profilo, inserire:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt -p "Command Prompt" ; new-tab -p "Windows PowerShell"
wt -p "Command Prompt" `; new-tab -p "Windows PowerShell"

PowerShell usa il punto e virgola ; per delimitare dichiarazioni. Per interpretare un punto e virgola ; come delimitatore di comandi per gli argomenti della riga di comando wt, è necessario sfuggire ai caratteri punto e virgola usando i backtick. PowerShell ha anche l’operatore di analisi stop ( % % ), che lo istruisce a smettere di interpretare qualsiasi cosa dopo di esso e basta passarlo alla lettera.

cmd.exe /c "wt.exe" -p "Command Prompt" \; new-tab -p "Windows PowerShell"

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; barra rovesciata + punto e virgola separa i comandi.

Riquadri multipli

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

  • Prompt dei comandi
  • PowerShell
  • Linux
wt -p "Command Prompt" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe
wt -p "Command Prompt" `; split-pane -p "Windows PowerShell" `; split-pane -H wsl.exe

PowerShell utilizza un punto e virgola ; per delimitare le istruzioni. Per interpretare un punto e virgola ; come delimitatore di comandi per gli argomenti della riga di comando wt, è necessario sfuggire ai caratteri punto e virgola usando i backtick. PowerShell ha anche l’operatore di analisi stop ( % % ), che lo istruisce a smettere di interpretare qualsiasi cosa dopo di esso e basta passarlo alla lettera.

cmd.exe /c "wt.exe" -p "Command Prompt" \; split-pane -p "Windows PowerShell" \; split-pane -H wsl.exe

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; barra rovesciata + punto e virgola separa i comandi.

Il flag -H (o --horizontal) indica che si desidera dividere orizzontalmente i riquadri. Il flag -V (o --vertical) indica che si desidera dividere i riquadri verticalmente.

Più schede e riquadri

I comandi new-tab e split-pane possono essere sequenziati per ottenere più schede, ognuna con riquadri divisi. Per aprire un nuovo terminale istanza con due schede, ciascuna con due riquadri, l’esecuzione di un Prompt dei comandi e un WSL riga di comando, con ogni scheda in una directory diversa, inserire:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt -p "Command Prompt" ; split-pane -V wsl.exe ; new-tab -d c:\ ; split-pane -H -d c:\ wsl.exe
wt -p "Command Prompt" `; split-pane -V wsl.exe `; new-tab -d c:\ `; split-pane -H -d c:\ wsl.exe

PowerShell usa il punto e virgola ; per delimitare dichiarazioni. Per interpretare un punto e virgola ; come delimitatore di comandi per gli argomenti della riga di comando wt, è necessario sfuggire ai caratteri punto e virgola usando i backtick. PowerShell ha anche l’operatore di analisi stop ( % % ), che lo istruisce a smettere di interpretare qualsiasi cosa dopo di esso e basta passarlo alla lettera.

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

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; barra rovesciata + punto e virgola separa i comandi. Nota per specificare una directory di Windows come directory di partenza per wsl.exe che sono necessarie due barre rovesciate \.

Tab title

Per aprire una nuova istanza di terminale con titoli tab personalizzati, utilizzare l’argomento --title. Per impostare il titolo di ogni scheda quando si aprono due schede, immettere:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt --title tabname1 ; new-tab -p "Ubuntu-18.04" --title tabname2
wt --title tabname1 `; new-tab -p "Ubuntu-18.04" --title tabname2
cmd.exe /c "wt.exe" --title tabname1 \; new-tab -p "Ubuntu-18.04" --title tabname2

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; forward-slash + punto e virgola separa i comandi.

Colore tabulazione

Per aprire una nuova istanza di terminale con colori tab personalizzati, utilizzare l’argomento --tabColor. Questo argomento sovrascrive il valore definito nel profilo, ma può anche essere sovrascritto utilizzando il selettore colore tabulazione. Nell’esempio seguente, viene creato un nuovo terminale con due schede di colori diversi:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt --tabColor #009999 ; new-tab --tabColor #f59218
wt --tabColor #009999 ; new-tab --tabColor #f59218
cmd.exe /c "wt.exe" --tabColor #009999 \; new-tab --tabColor #f59218

Gli alias di esecuzione non funzionano nelle distribuzioni WSL. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; separa i comandi.

Quando --tabColor è impostato per una scheda, viene associato al primo riquadro di questa scheda. Quindi in una scheda con più riquadri, il colore verrà applicato solo se il primo riquadro è a fuoco. Per impostare il colore della scheda per riquadri aggiuntivi, è necessario aggiungere 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

Tab focus

Per aprire una nuova istanza di terminale con una scheda specifica attiva, utilizzare il flag -t (o --target), insieme al numero di tab-index. Per aprire il tuo profilo predefinito nella prima scheda e “Ubuntu-18.04” profilo concentrati nella seconda scheda (-t 1), inserire:

  • Prompt dei comandi
  • PowerShell
  • Linux
wt ; new-tab -p "Ubuntu-18.04" ; focus-tab -t 1
wt `; new-tab -p "Ubuntu-18.04" `; focus-tab -t 1
cmd.exe /c "wt.exe" \; new-tab -p "Ubuntu-18.04" \; focus-tab -t 1

Esecuzione alias non funzionano in WSL distribuzioni. Se si desidera utilizzare wt.exe da una riga di comando WSL, è possibile generare direttamente da CMD eseguendo cmd.exe. L’opzione /c indica a CMD di terminare dopo l’esecuzione e \; barra rovesciata + punto e virgola separa i comandi.

Esempi di comandi multipli da PowerShell

Il terminale Windows utilizza il carattere punto e virgola ; come delimitatore per separare i comandi nella riga di comando wt. Sfortunatamente, PowerShell utilizza anche ; come separatore di comandi. Per aggirare questo problema, puoi utilizzare i seguenti trucchi per eseguire più comandi wt da PowerShell. In tutti gli esempi seguenti, viene creata una nuova finestra di terminale con tre riquadri: uno che esegue il prompt dei comandi, uno con PowerShell e l’ultimo che esegue WSL.

I seguenti esempi utilizzano il comando Start-Processper eseguire wt. Per ulteriori informazioni sul motivo per cui il terminale utilizza Start-Process, vedere Utilizzo di start di seguito.

Parametri con virgolette singole

In questo esempio, i parametri wt sono racchiusi tra virgolette singole ('). Questa sintassi è utile se non viene calcolato nulla.

start wt 'new-tab "cmd" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe'

Virgolette con escape

Quando si passa un valore contenuto in una variabile alla riga di comando wt, utilizzare la seguente sintassi:

$ThirdPane = "wsl.exe"start wt "new-tab cmd ; split-pane -p `"Windows PowerShell`" ; split-pane -H $ThirdPane"

Notare l’uso di ` per sfuggire alle virgolette (") intorno a “Windows PowerShell” nel parametro -p al parametro split-pane.

Utilizzo di start

Tutti gli esempi precedenti utilizzavano esplicitamente start per avviare il terminale.

I seguenti esempi non utilizzano start per eseguire la riga di comando. Invece, ci sono altri due metodi per sfuggire alla riga di comando:

  • Sfugge solo ai punti e virgola in modo che PowerShell li ignori e li passi direttamente a wt.
  • Usando --%, quindi PowerShell tratterà 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 Terminale di Windows appena creata creerà la finestra analizzando correttamente tutti gli argomenti della riga di comando forniti.

Tuttavia, questi metodi non sono attualmente raccomandati, poiché PowerShell attenderà la chiusura della finestra del terminale appena creata prima di restituire il controllo a PowerShell. Per impostazione predefinita, PowerShell attenderà sempre la chiusura delle applicazioni Windows Store (come Windows Terminal) prima di tornare al prompt. Si noti che questo è diverso dal comportamento del prompt dei comandi, che tornerà immediatamente al prompt.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

More: