No Powershell no Windows 10, como posso remover/não exibir a longa string do nome do arquivo no meu prompt?

No Powershell no Windows 10, como posso remover/não exibir a longa string do nome do arquivo no meu prompt?

Como removo toda ou parte da string grande de nome de arquivo que aparece antes de cada prompt do PowerShell no Windows 10? Estou usando Gitshell com ConsoleZ e git elegante. Procurei em todas as configurações deles e não encontrei nada.

Eu circulei em vermelho na imagem abaixo o que quero dizer.

insira a descrição da imagem aqui

Responder1

Aqui estão as propriedades que controlam a exibição do prompt:Prompt do PowerShell. Basicamente tudo depende de uma função chamada prompt que pode ser modificada pelo usuário.

prompt de função { 'PS ' + ($pwd -split '\')[0]+' '+$(($pwd -split '\')[-1] -join '\') + '> ' }

Usar esta função exibe apenas o diretório atual sem o caminho, mas parece que você precisará combiná-lo com as configurações elegantes do git definindo um perfil personalizado como o exemplo emperfil.exemplo.ps1no código posh-git

EDIT: Usando esta informação (que não é uma solução por si só) komali_2 conseguiu encontrar a seguinte solução:

A resposta de DrNoone fornece ótimas informações sobre por que isso funciona, e eu recomendo fortemente a leitura de seu material.

Para responder à minha pergunta, faça o seguinte:

  1. Abra o arquivo profile.example.ps1 no diretório de instalação posh-git em um editor de texto.

  2. Edite-o para ficar como abaixo:

.

Push-Location (Split-Path -Path $MyInvocation.MyCommand.Definition -Parent)

# Load posh-git module from current directory
Import-Module .\posh-git

# If module is installed in a default location ($env:PSModulePath),
# use this instead (see about_Modules for more information):
# Import-Module posh-git


# Set up a simple prompt, adding the git prompt parts inside git repos
function global:prompt {
    $realLASTEXITCODE = $LASTEXITCODE

    Write-Host(($pwd -split '\\')[0]+' '+$(($pwd -split '\\')[-1] -join '\')) -nonewline

    Write-VcsStatus

    $global:LASTEXITCODE = $realLASTEXITCODE
    return "> "
}

Pop-Location

Start-SshAgent -Quiet

Isso resultará em seu prompt parecido com:

insira a descrição da imagem aqui

Responder2

A resposta de DrNoone fornece ótimas informações sobre por que isso funciona, e eu recomendo fortemente a leitura de seu material.

Para responder à minha pergunta, faça o seguinte:

  1. Abra o arquivo profile.example.ps1 no diretório de instalação posh-git em um editor de texto.

  2. Edite-o para ficar como abaixo:

.

Push-Location (Split-Path -Path $MyInvocation.MyCommand.Definition -Parent)

# Load posh-git module from current directory
Import-Module .\posh-git

# If module is installed in a default location ($env:PSModulePath),
# use this instead (see about_Modules for more information):
# Import-Module posh-git


# Set up a simple prompt, adding the git prompt parts inside git repos
function global:prompt {
    $realLASTEXITCODE = $LASTEXITCODE

    Write-Host(($pwd -split '\\')[0]+' '+$(($pwd -split '\\')[-1] -join '\')) -nonewline

    Write-VcsStatus

    $global:LASTEXITCODE = $realLASTEXITCODE
    return "> "
}

Pop-Location

Start-SshAgent -Quiet

Isso resultará em seu prompt parecido com:

insira a descrição da imagem aqui

informação relacionada