
He vistoesta preguntaque no es exactamente lo mismo. Tengo Powershell Core 6 instalado. Normalmente abro Powershell con el atajo Windows+ Xy luego I. Ahora me gustaría que ese acceso directo abra Powershell Core 6 en lugar del antiguo Powershell 5. ¿Es eso posible?
Respuesta1
O simplemente use la nueva Terminal de Windows y agregue lo que elija.
Terminal de Windows (vista previa)
Windows Terminal es una aplicación de terminal nueva, moderna, rápida, eficiente, potente y productiva para usuarios de herramientas de línea de comandos y shells como Command Prompt, PowerShell y WSL. Sus características principales incluyen múltiples pestañas, compatibilidad con caracteres Unicode y UTF-8, un motor de representación de texto acelerado por GPU y temas, estilos y configuraciones personalizados.
Este es un proyecto de código abierto y damos la bienvenida a la participación de la comunidad. Para participar por favor visitehttps://github.com/microsoft/terminal
Actualización basada en los comentarios hasta el momento.
No puedes hacer lo que buscas de forma nativa. Tienes que hackear el registro para cambiar esto.
Sin embargo, ¿por qué hacer todo ese esfuerzo, cuando puedes fijar el acceso directo pwsh en la primera posición de tu barra de tareas y luego simplemente presionar la tecla Win + 1 (o donde lo colocaste en la posición 9) en la barra de tareas?
Por ejemplo, en mi barra de tareas tengo Windows Terminal, pwsh, powershell, powershell_ISE, VSCode, PowerShellStudio en la posición 1,2,3,4,5,6.
Entonces, al presionar Win+#, se inicia la aplicación. No se requiere pirateo de registros y 2 pulsaciones de teclas frente a 3. Incluso se podría eliminar el pwsh, ya que está incluido como una opción en Windows Terminal si tiene Windows Terminal y pswh instalados.
Respuesta2
Utilice esta herramienta que le permite editar el menú Win+X: https://winaero.com/download-winx-menu-editor-allows-you-to-add-or-remove-winx-menu-items
Aquí hay algunos grupos. Agréguelo al grupo que desee usando el botón Agregar un programa. Y luego, presione Reiniciar Explorador (NOTA: ¡Esto cerrará todas las ventanas del explorador de archivos!)
Respuesta3
Otra opción a la sugerencia de @vssher sería usarConEmuoTerminal de Microsoft.
Para establecerlo como terminal predeterminado:
- Terminal de Microsoft: Configuración de Windows→Privacidad y seguridad→Para desarrolladores→Terminal
- ConEmuAjustes:
+ Alt+ P→Integración→Término predeterminado:
- Forzar ConEmu como terminal predeterminado para aplicaciones de consola
Interruptor principal - Regístrese al iniciar el sistema operativo
Iniciar automáticamente al iniciar sesión a través del registro - Modo agresivo
No se requiere una instancia de ConEmu en ejecución para conectar nuevos procesos, un proceso ya conectado [explorer.exe
] es suficiente - Lista de ejecutables enlazados o nombres de clases de ventana:
explorer.exe
ConEmu está configurado como terminal predeterminado a través demanosdentro deCáscara de Windows[explorer.exe
] y/o cualquier otro programa, delimitado mediante|
[pipe]:
(La aplicación de configuración de Windows no influye en que ConEmu se configure como el terminal del sistema operativo predeterminado debido a los ganchos)explorer.exe|devenv.exe|totalcmd.exe|TaskManagerWindow|codeblocks.exe|lazarus.exe|gdb.exe
- Forzar ConEmu como terminal predeterminado para aplicaciones de consola
Para configurar la tecla de acceso rápido para iniciar Pwsh.exe
en ConEmu:
- Ajustes→Puesta en marcha→Tareas:Tareas predefinidas (grupo de comandos)
- +icono o utilice el valor predeterminado de ConEmu [
Shells::PowerShell Core
]- Nombre (muestra
Group <#>
):Powershell::Pwsh
- Tecla de acceso rápido:Selecciona lo que quieras
- Tarea predeterminada para la nueva consola:Shell predeterminado cada vez que abres ConEmu
- Listas de salto de la barra de tareas:Agrega esta tarea a la lista de salto de la barra de tareas de ConEmu
- Shell predeterminado (Win+X):
- Ventanas 10:Hace que esto sea el predeterminado en el menú Win+.X
- Ventanas 11:No afecta al menú Win+X
- Si bien el menú Win+ Xtambién se puede modificar manualmente en Win <11, causa corrupción en 11 (si alguien conoce una forma que no resulte en corrupción, comente y lo modificaré)
- Parámetros de la tarea:No se necesita ninguno, pero se puede personalizar.
- Comandos:
pwsh.exe -NoExit -Command "Import-Module C:\Users\<username>\WindowsPowerShell\profile.ps1" -new_console:t:"Pwsh"
- Para iniciar como terminal de administración, agregue
a:
antest:
:-new_console:a:t:"Pwsh"
-Import-Module
es opcional, pero permite la personalización del mensaje enprofile.ps1
:# # =========================================================== ##::[[--- Powershell PS1 Profile ---]]::## # =========================================================== # Microsoft.PowerShell_profile.ps1 || Profile.ps1: # %UserProfile%\Documents\WindowsPowerShell # $env:UserProfile\Documents\WindowsPowerShell # ================================================================ # Variables #---------------------------------------------------------------- # ANSI: $ESC = [char]27 # Host.PrivateData: $PD = $($Host.PrivateData) # Colors: $Host.UI.RawUI.BackgroundColor = ($bckgrnd = 'Black') $Host.UI.RawUI.ForegroundColor = 'Gray' $PD.ErrorForegroundColor = 'Red' $PD.ErrorBackgroundColor = $bckgrnd $PD.WarningForegroundColor = 'Magenta' $PD.WarningBackgroundColor = $bckgrnd $PD.DebugForegroundColor = 'Yellow' $PD.DebugBackgroundColor = $bckgrnd $PD.VerboseForegroundColor = 'Green' $PD.VerboseBackgroundColor = $bckgrnd $PD.ProgressForegroundColor = 'Yellow' $PD.ProgressBackgroundColor = $bckgrnd #================================================================ # Functions #---------------------------------------------------------------- # Prompt: Function set-prompt { Param ( [Parameter(Position=0)] [ValidateSet("Default","Test")] $Action ) switch ($Action) { "Default" { Function global:prompt { if (test-path variable:/PSDebugContext) { '[DBG]: ' } write-host " " write-host ("$ESC[48;2;40;40;40m$ESC[38;2;170;210;0m$(Get-Location) $ESC[0m $ESC[0m") if ( $host.UI.RawUI.WindowTitle -match "Administrator" ) { $Host.UI.RawUI.ForegroundColor = 'Red' $(if ($nestedpromptlevel -ge 1) { write-host ('PS $$ ') -ForegroundColor Red -NoNewLine } else { write-host ('PS $ ') -ForegroundColor Red -NoNewLine }) } else { $(if ($nestedpromptlevel -ge 1) { write-host ('PS $$ ') -ForegroundColor Blue -NoNewLine } else { write-host ('PS $ ') -ForegroundColor Blue -NoNewLine }) } return " " } } } } set-prompt Default # Relaunch as Admin: function Relaunch-Admin { Start-Process -Verb RunAs wt } Set-Alias psa Relaunch-Admin
- Para iniciar como terminal de administración, agregue
- Nombre (muestra
- Save settings
Para importar elConEmu.xml
configuración que uso:
Respuesta4
Esta es una solución alternativa que estoy usando actualmente.
Si usa PowerShell $PROFILE
, puede insertar una línea pwsh.exe
al comienzo del script. Cualquier acceso directo de Windows para iniciar PowerShell se conectará efectivamentePowerShell 6indirectamente como un proceso hijo dePowerShell 5.