Con Windows PowerShell, ¿cómo cambio el símbolo del sistema?
Por ejemplo, el mensaje predeterminado dice
PS C:\Documents and Settings\govendes\My Documents>
Quiero personalizar esa cadena.
Respuestas:
Simplemente coloque la función prompt
en su perfil de PowerShell ( notepad $PROFILE
), por ejemplo:
function prompt {"PS: $(get-date)>"}
o de color:
function prompt
{
Write-Host ("PS " + $(get-date) +">") -nonewline -foregroundcolor White
return " "
}
new-item -itemtype file -path $profile -force
Set-ExecutionPolicy RemoteSigned
.
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
si solo desea cambiar para el usuario actual o no puede ejecutar como administrador.
En relación con un comentario a la respuesta de Ocaso Protal , se necesita lo siguiente para Windows Server 2012 y Windows 7 (en una ventana de PowerShell):
new-item -itemtype file -path $profile -force
notepad $PROFILE
Sugeriría lo siguiente como aviso si ejecuta con varios nombres de usuario (por ejemplo, usted mismo + un inicio de sesión de producción):
function Global:prompt {"PS [$Env:username]$PWD`n>"}
(El crédito es para David I. McIntosh por este).
Set-ExecutionPolicy RemoteSigned
.
Cuando se le solicita, me gusta una marca de tiempo actual y letras de unidad resueltas para unidades de red. Para hacerlo más legible, lo puse en dos líneas y jugué un poco con los colores.
Con CMD, terminé con
PROMPT=$E[33m$D$T$H$H$H$S$E[37m$M$_$E[1m$P$G
Para PowerShell, obtuve el mismo resultado con:
function prompt {
$dateTime = get-date -Format "dd.MM.yyyy HH:mm:ss"
$currentDirectory = $(Get-Location)
$UncRoot = $currentDirectory.Drive.DisplayRoot
write-host "$dateTime" -NoNewline -ForegroundColor White
write-host " $UncRoot" -ForegroundColor Gray
# Convert-Path needed for pure UNC-locations
write-host "PS $(Convert-Path $currentDirectory)>" -NoNewline -ForegroundColor Yellow
return " "
}
Que es un poco más legible :-)
Por cierto:
powershell_ise.exe $PROFILE
lugar del (tonto) Bloc de notas .Si quieres hacerlo tú mismo, entonces la respuesta de Ocaso Protal es el camino a seguir. Pero si eres perezoso como yo y solo quieres algo que lo haga por ti, te recomiendo encarecidamente el paquete Pshazz de Luke Sampson .
Solo para mostrarte lo vago que puedes ser, te daré un tutorial rápido.
scoop install pshazz
)pshazz use msys
)Pshazz también te permite crear tus propios temas, que es tan simple como configurar un archivo JSON. ¡Mira el mío para ver lo fácil que es!
Para mostrar la letra de la unidad que utilizo:
function prompt {(get-location).drive.name+"\...>"}
Luego, para volver a la ruta que uso:
function prompt {"$pwd>"}
Esta versión de la respuesta de Warren Stevens evita el ruidoso "Microsoft.PowerShell.Core \ FileSystem" en la ruta de acceso Set-Location
a recursos compartidos de red.
function prompt {"PS [$Env:username@$Env:computername]$($PWD.ProviderPath)`n> "}
notepad $PROFILE
no funciona en Windows 7 desde un indicador de administración de powershell