Cuando inicio sesión localmente en una instalación Server 2012 Core, cada vez que tengo que escribir powershell
para acceder a una línea de comando de PowerShell en lugar de un simple cmd.
Suponiendo que nunca eliminaré la característica de Windows de PowerShell, ¿cómo puedo configurar el servidor para que me lleve directamente a un indicador de PowerShell en lugar de cmd?
fuente
AvailableShells
clave, solo TrustedInstaller sí. No puedo cambiar los permisos sin tomar posesión de la clave. ¿Crees que tomar posesión de una clave del sistema presentará algún problema? Aquí están las ACL de mi registro: gist.github.com/vcsjones/4dca25f94bfb1cfd5857reg add
ejemplo.Así que aquí está mi solución a esta pregunta.
AvailableShells
ruta.Mi solución, como muchas que encontrarás en una búsqueda, es cambiar el
HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
valor a Powershell. He utilizado la orientación por nivel de elemento para modificar este valor solo en sistemas sin explorer.exe. AFAIK, esta es una de las pruebas más simples para ordenar los sistemas Server Core de los sistemas con un escritorio estándar.La línea de comando que uso (
powershell.exe -noexit -Command "Set-Location ${Env:USERPROFILE} ;start sconfig ; start runonce.exe /AlternativeShellStartup"
) iniciará powershell, disparará las tareas de runone, establecerá mi directorio actual e iniciará sconfig en otra ventana.fuente
El comando en la respuesta de syneticon-dj no funciona, porque un administrador elevado normal no tiene acceso de escritura a la clave. Los comentarios mencionan que necesita cambiar los permisos. Pero esto implica mucho hacer clic en regedit.exe y no funciona para instalaciones con script.
Yo uso el siguiente script de PowerShell:
primero cambia los permisos en la clave y luego establece PowerShell como el shell.
Tenga en cuenta que esto solo puede funcionar en un sistema operativo en inglés, ya que se refiere al grupo 'Administradores'.
fuente