Búsqueda de sitios web

Abra Windows Terminal PowerShell con panel dividido


La otra noche presenté ante el grupo de usuarios de PowerShell de Mississippi cómo empezar a utilizar Windows Terminal. Esta ha sido mi consola PowerShell preferida durante bastante tiempo. Utilizo Windows Terminal para todo. Durante la charla surgió una pregunta sobre cómo iniciar una sesión con paneles divididos. Esta es una característica muy interesante. Puedo tener una sola pestaña dividida en diferentes perfiles. No existe una forma oficial de lograr esto, pero cuando uso PowerShell puedo utilizar la siguiente solución. De acuerdo. Puedes llamarlo un truco.

En primer lugar, en el archivo settings.json de su Terminal de Windows, debe definir una combinación de teclas que abra el perfil deseado.

{
    "command": {
        "action": "splitPane",
        "split": "auto",
        "profile": "Windows PowerShell No Profile",
        "startingDirectory": "C:\\",
        "tabTitle": "PS Clean"
    },
    "keys": [
        "ctrl+shift+<"
    ]
}

Esta combinación de teclas abrirá mi perfil de Terminal de Windows que inicia Windows PowerShell sin perfil.

A continuación, editaré el script de mi perfil de Windows PowerShell. Podría hacer lo mismo con PowerShell 7. Pero mi objetivo es que cuando inicie Windows PowerShell en Windows Terminal obtenga una pantalla dividida. Un panel tiene mi perfil cargado y el otro está limpio.

Al final del script del perfil, agrego este código.

if ( $env:wt_session) {
    #split the screen
    $wshell = New-Object -ComObject Wscript.Shell
    $wshell.sendkeys("^+<")
} #in a WT Session

Sí. Este es un truco de SendKeys VBScript. ¡Pero funciona!

Podrías lograr resultados similares usando wt.exe pero personalmente, lo encuentro un poco complicado de usar y lanzará una nueva instancia de Windows Terminal. Espero que alguna versión futura tenga una mejor solución. Pero mientras tanto, al menos para PowerShell, tengo algo que funciona.

Artículos relacionados