27349 Letture
Windows Terminal: prompt dei comandi avanzato per Windows 10

Windows Terminal: prompt dei comandi avanzato per Windows 10

Come si installa il nuovo Windows Terminal in Windows 10, per adesso dal Windows Store. Come fare per aprire sempre le finestre di Windows Terminal con i privilegi amministrativi.

Durante la conferenza Microsoft Build 2019 i responsabili dell'azienda di Redmond avevano annunciato Windows Terminal, un nuovo prompt dei comandi basato capace di adattarsi alle esigenze di ogni utente.
Dal nuovo Windows Terminal si possono comodamente avviare finestre del tradizionale prompt dei comandi (cmd), di PowerShell, di Windows Subsystem for Linux (WSL; vedere Linux in Windows: come, quando e perché utilizzarlo e Microsoft aggiornerà il kernel Linux di WSL via Windows Update) e di Azure Cloud Shell.

In occasione dell'evento Build 2020, i tecnici Microsoft hanno rilasciato Windows Terminal 1.0 anticipando che da luglio 2020 verranno distribuiti aggiornamenti mensili. Successivamente, è quasi scontato che Windows Terminal diverrà parte integrante di Windows 10, forse già con il feature update di ottobre-novembre 2020 (versione 2009).


Rispetto alla classica console testuale di Windows, il nuovo Windows Terminal offre la possibilità di aprire e usare contemporaneamente più schede: ciò significa che dalla stessa finestra si possono usare il prompt dei comandi, PowerShell, interagire con una distribuzione Linux installata in Windows attraverso WSL, usare Azure Cloud Shell. Basta infatti cliccare sulla freccia rivolta verso il basso, a destra del pulsante "+", e scegliere la tipologia di finestra che si desidera utilizzare.

Windows Terminal: prompt dei comandi avanzato per Windows 10

Windows Terminal supporta l'accelerazione hardware usando la GPU, è completamente compatibile con il set di caratteri Unicode, supporta font, emoji, temi e tutta una serie di personalizzazioni. Al momento basta cliccare su Settings per modificare il file in formato JSON contenente la configurazione di Windows Terminal.

Microsoft ha di recente aggiunto a Windows Terminal una utilissima funzionalità per la ricerca del testo all'interno delle varie schede aperte: indipendentemente da quanto visualizzato, si può cercare una stringa di testo senza essere costretti a noiose attività di scrolling. Per richiamare la casella di ricerca di Windows Terminal basta premere la combinazione di tasti CTRL+MAIUSC+F.

Premendo la combinazione di tasti MAIUSC+ALT+D, personalizzabile intervenendo sulla riga { "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate" }, "keys": "alt+shift+d" } del file delle impostazioni in formato JSON, è possibile suddividere la riga di comando in due o più pannelli verticali e orizzontali.

Windows Terminal: prompt dei comandi avanzato per Windows 10

Sono stati portati al debutto anche alcuni temi retrò in stile MS-DOS per un "effetto nostalgia" a beneficio dei "veterani" (vedere questa nota ufficiale).

Windows Terminal è un progetto opensource: il suo codice sorgente è pubblicato su GitHub a questo indirizzo.

Per installare e utilizzare Windows Terminal in Windows 10 basta accedere a questa pagina quindi fare clic sul pulsante Ottieni.

Per impostazione predefinita, Windows Terminal viene aperto con i normali diritti utente. Per aprire l'applicazione con i diritti di amministratore, basta digitare windows terminal nella casella di ricerca del menu Start, cliccarvi con il tasto destro del mouse quindi scegliere Esegui come amministratore.

Windows Terminal: prompt dei comandi avanzato per Windows 10

Se si volesse aggiungere Windows Terminal alla barra delle applicazioni di Windows 10 aprendo sempre la finestra con i diritti di amministratore, è possibile applicare una procedura non immediatissima ma efficace.


Impostare cmd come scheda predefinita su Windows Terminal

Per impostazione predefinita, Windows Terminal apre una scheda di PowerShell.

Se si volesse fare in modo che Windows Terminal apra in automatico, per prima, una scheda del vecchio prompt dei comandi (cmd), basta accedere alla sezione Impostazioni quindi sostituire la riga "defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", (al momento è la numero 11) con quanto segue: "defaultProfile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",.

Salvando il file JSON, chiudendo Windows Terminal e riavviandolo, si aprirà automaticamente una scheda di cmd anziché PowerShell.

Aggiungere Windows Terminal nella barra delle applicazioni e aprire la finestra con i diritti di amministratore

1) Premere la combinazione di tasti Windows+R quindi digitare shell:AppsFolder e premere Invio.

2) Cliccare con il tasto destro sull'icona di Windows Terminal e scegliere Crea collegamento. Cliccare quindi su per accettare la creazione di un collegamento sul desktop di Windows 10.

3) Rinominare il collegamento creato sul desktop come WindowsTerminal (senza spazio).

4) Scaricare questo file compresso ed estrarre lo script PowerShell Set-LnkToRunAsAdmin.ps1 nella cartella del desktop (premere Windows+R e digitare %userprofile%\Desktop).


5) Cliccare con il tasto destro del mouse sul file Set-LnkToRunAsAdmin.ps1 e scegliere Esegui con PowerShell. Lo script si occuperà di modificare il collegamento WindowsTerminal.lnk e aggiungere uno speciale bit per avviarlo sempre con i diritti di amministratore.


6) Creare un nuovo collegamento sul desktop (clic con il tasto destro del mouse sul desktop quindi scegliere Nuovo, Collegamento) indicando cmd.exe /c "%userprofile%\Desktop\WindowsTerminal.lnk" come Destinazione e scegliendo Ridotto a icona dal menu a tendina Esegui (cliccare con il tasto destro del mouse sul collegamento appena creato e scegliere Proprietà).

Windows Terminal: prompt dei comandi avanzato per Windows 10

7) Cliccando su Cambia icona, nel campo Cerca icone nel file, si potrà digitare il percorso dell'eseguibile di Windows Terminal.
Per trovarlo, basta premere Windows+X, scegliere Windows PowerShell, digitare get-appxpackage > UWP_Apps_List.txt quindi notepad UWP_Apps_List.txt, cercare la stringa Microsoft.WindowsTerminal quindi copiare il percorso accanto alla voce InstallLocation aggiungendovi alla fine \WindowsTerminal.exe.
Il percorso di Windows Terminal così ottenuto dovrà essere incollato nel campo Cerca icone nel file sostituendo quanto presente.

Windows Terminal: prompt dei comandi avanzato per Windows 10

Confermando con la pressione del pulsante OK quindi trascinando il secondo collegamento così creato dal desktop alla barra delle applicazioni di Windows 10, si potrà d'ora in avanti eseguire sempre Windows Terminal con i diritti di amministratore.

Per verificare che Windows Terminal è stato aperto con i diritti di amministratore basta digitare, da una scheda cmd (non PowerShell) quanto segue:


whoami /groups | find "12288" && echo Elevated

Si vedrà apparire Elevated a conferma che la finestra di Windows Terminal è aperta con i diritti di amministratore.
Nel caso in cui si volesse eseguire il comando da una scheda PowerShell, prima di inserire l'istruzione indicata, bisognerà scrivere cmd e premere il tasto Invio.

Windows Terminal: prompt dei comandi avanzato per Windows 10

In alternativa, da una scheda PowerShell, si può digitare:

if ((New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)){Write-Output "Elevated."} else {Write-Output "Not elevated."}

Windows Terminal: prompt dei comandi avanzato per Windows 10