2012-07-18 14 views
16

He estado retocando algunos de los scripts en mi perfil de PowerShell y me ha resultado molesto salir de PowerShell y luego reiniciarlo para que cargue los cambios que haya realizado en los scripts de mi perfil . ¿Es posible reiniciar la sesión de PowerShell sin salir?Actualizar/reiniciar la sesión de PowerShell sin salir de

+0

La función está planificada: https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/13390179-powershell-se-does-not-have-the-ability-to-restar – JohnLBevan

Respuesta

8

Puede hacer . $profile para obtener el perfil nuevamente.

+1

O especifique un archivo de perfil si está actualizando algo que no sea C: \ Users \ wombat \ Documents \ WindowsPowerShell \ Microsoft.PowerShell_profile.ps1 – EBGreen

+0

me sale un error cuando ejecuto ". $ profile " – shreddish

+0

@reddman: qué error obtienes. –

4

La respuesta de @manojlds es correcta, pero podría terminar arrojando errores. Por ejemplo, si ha definido un nuevo PSDrive en su perfil, el redimensionamiento puede causar errores.

Un enfoque alternativo es comenzar primero con PowerShell, y luego iniciar inmediatamente otra versión con solo escribir PowerShell. Realizo los cambios en mi perfil en la consola anidada, salgo y luego vuelvo a ejecutar PowerShell para probar el perfil actualizado.

Otra cosa: haga que el perfil cambie lenta y cuidadosamente. En mi opinión, aunque los perfiles necesitan evolucionar, esa evolución generalmente debería ser lenta. ¡YMMV!

+0

Para aquellos de ustedes interesados ​​en probar esto, la sintaxis real es 'powershell ()' – JackChance

2

Puede hacer una función simple y lo agregue a su $profile (o hacer un módulo y luego importarlos en '$ perfil'), por ejemplo:

function Restart-PowerShell{ 
    Start-Process PowerShell # Launch PowerShell host in new window 
    exit # Exit existing PowerShell host window 
} 
# Add any alias if you want, for ex. rps (rp already occupied by "Remove-ItemProperty”) 
Set-Alias -Name rps -Value Restart-PowerShell 

Nota: Si bien esto puede no ser exactamente lo escribiste en el título de tu pregunta "sin salir", pero si, en esencia, tu intención original era tener algún tipo de reinicio del comando de host de PowerShell (que no está disponible en PS por defecto) entonces hará el trabajo ...

+0

'start powershell' es la verdadera respuesta aquí, aunque tenga en cuenta que perderá la configuración de la ventana. – Andrew

Cuestiones relacionadas