Я хотел бы, чтобы текущий рабочий каталог отображался в командной строке powershell, как это было бы сделано в (например) приглашении CMD. Как я могу это сделать?
4 ответа
Проверьте это: http://mshforfun.blogspot.com/2006/05/perfect-prompt-for-windows-powershell.html
По сути, вы можете создать файл профиля под названием Microsoft.PowerShell_profile.ps1, который будет запускаться каждый раз, когда вы запускаете powershell.
В зависимости от того, для кого вы хотите его запустить, есть несколько папок, в которые вы можете поместить этот файл (объяснение по ссылке выше). Если это только для вас, вы можете создать папку с именем WindowsPowerShell в папке «Мои документы» и поместить ее туда.
Если вы поместите эту функцию в этот файл:
function prompt
{
"PS " + $(get-location) + "> "
}
Это заставит ваш запрос выглядеть так:
PS C:\directory\path\here>
Есть много других вещей, которые вы можете вставить в это, но это основы.
ПРИМЕЧАНИЕ: прежде чем вы сможете использовать сценарий профиля, вам нужно запустить «set-executepolicy remotesigned» из powershell - это позволит вам запускать неподписанные сценарии, написанные локально на компьютере, и подписанные сценарии от других.
Просто добавьте следующее в файл profile.ps1
(в папке « Мои документы \WindowsPowerShell »):
function prompt { "$pwd>" }
Попробуйте следующее:
$CurrentDir = $(get-location).Path;
В настоящее время это работает отлично:
echo "$PWD"
который работает иначе, чем
echo $PWD
Только не забудьте про кавычки :) Пример вывода ниже.
PS C:\Users\user name> echo $PWD
Path
----
C:\Users\user name
PS C:\Users\user name> echo "$PWD"
C:\Users\user name
PS C:\Users\user name>