Использование Windows powershell, как изменить командную строку? Например, подсказка по умолчанию сообщает
PS C:\Documents and Settings\govendes\My Documents>
Я хочу настроить эту строку.
Спасибо
Использование Windows powershell, как изменить командную строку? Например, подсказка по умолчанию сообщает
PS C:\Documents and Settings\govendes\My Documents>
Я хочу настроить эту строку.
Спасибо
Просто введите функцию prompt
в свой профиль Powershell (notepad $PROFILE
), например:
function prompt {"PS: $(get-date)>"}
или цвет:
function prompt
{
Write-Host ("PS " + $(get-date) +">") -nonewline -foregroundcolor White
return " "
}
В связи с вышеприведенным комментарием для Windows Server 2012 и Win7 требуется следующее:
new-item -itemtype file -path $profile -force
notepad $PROFILE
Я предлагаю следующее в качестве приглашения, если вы запускаете несколько имен пользователей (например, самостоятельно + вход в систему):
function Global:prompt {"PS [$Env:username]$PWD`n>"}
(кредит Дэвиду И. Макинтошу для этого)
Если вы хотите сделать это самостоятельно, то Ocaso Protal answer - это путь. Но если вы ленитесь, как я, и просто хотите что-то сделать для вас, я настоятельно рекомендую пакет Luke Sampson Pshazz.
Просто, чтобы показать вам, как вы ленивы, я дам быстрый учебник.
scoop install pshazz
)pshazz use msys
)Pshazz также позволяет создавать собственные темы, что так же просто, как настройка файла JSON. Посмотрите мой, чтобы увидеть, насколько это просто!
В командной строке мне нравится текущая временная метка и разрешенные буквы дисков для сетевых дисков. Чтобы сделать его более читаемым, я положил его в две строки и немного поиграл с цветами.
С CMD я закончил с
PROMPT=$E[33m$D$T$H$H$H$S$E[37m$M$_$E[1m$P$G
Для PS я получил тот же результат:
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 " "
}
Это немного читаемо: -)
BTW:
powershell_ise.exe $PROFILE
вместо (тупой) блокнотВ этой версии ответа Уоррена Стивенса избегает шумной "Microsoft.PowerShell.Core\FileSystem" в пути, если вы Set-Location
к сетевым ресурсам.
function prompt {"PS [$Env:[email protected]$Env:computername]$($PWD.ProviderPath)`n> "}