Como mostrar o diretório atual no PowerShell?


22

Eu gostaria que o diretório de trabalho atual fosse exibido na linha de comando do PowerShell, como seria feito em um prompt (por exemplo) do CMD. Como posso fazer isso?

Respostas:


22

Confira: http://mshforfun.blogspot.com/2006/05/perfect-prompt-for-windows-powershell.html

Basicamente, você pode criar um arquivo de 'perfil' chamado Microsoft.PowerShell_profile.ps1, que será executado toda vez que você iniciar o PowerShell.

Dependendo de quem você deseja executar, há várias pastas nas quais você pode colocar esse arquivo (explicado no link acima). Se for apenas para você, você pode criar uma pasta chamada WindowsPowerShell na sua pasta Meus Documentos e colocá-la lá.

Se você colocar essa função nesse arquivo:

function prompt
{
    "PS " + $(get-location) + "> "
}

Isso fará com que seu prompt fique assim:

PS C:\directory\path\here>

Você pode colocar um monte de outras coisas, mas esse é o básico.

NOTA: antes de poder usar o script de perfil, será necessário executar "set-Executionpolicy remotesigned" no PowerShell - isso permitirá que você execute scripts não assinados escritos localmente no computador e scripts assinados de outras pessoas.


Não parece trabalho para Visual Studio add-in :( Oh bem.
Billy ONeal

@BillyONeal: verifique o valor $profile.CurrentUserCurrentHoste $profile.CurrentUserCurrentHostpara ver quais scripts de perfil (usuário) são válidos. Hosts diferentes (por exemplo, VS vs. ISE) têm um valor diferente para$profile.CurrentUserCurrentHost
Richard

9

Simples, adicione o seguinte ao seu profile.ps1arquivo (na pasta Meus Documentos \ WindowsPowerShell ):

prompt de função {"$ pwd>"}


2

Hoje em dia, isso funciona bem:

echo "$PWD"

que funciona de forma diferente do que

echo $PWD

Só não esqueça as aspas :) Exemplo de saída abaixo.

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>

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.