Os aliases do perfil do console do Powershell (funções) não estão funcionando, por quê?

0

Esta página da TechNet diz a localização de um arquivo de perfil do console para o usuário atual apenas e todas as conchas devem ser:

%UserProfile%\Documents\Windows­PowerShell\profile.ps1

No meu caso, o %UserProfile% aponta para:

 C:\Users\vlastimil

Então, criei o seguinte arquivo:

C:\Users\vlastimil\Documents\Windows­PowerShell\profile.ps1

Que neste momento contém 2 funções:

function sha256sum([string]$arg) {
    (Get-FileHash -Algorithm SHA256 $arg | Select -ExpandProperty Hash).ToLower()
}

function sha512sum([string]$arg) {
    (Get-FileHash -Algorithm SHA512 $arg | Select -ExpandProperty Hash).ToLower()
}

Mas chamar essas funções gera um erro:

PS C:\Users\vlastimil> sha512sum
sha512sum : The term 'sha512sum' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ sha512sum
+ ~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (sha512sum:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Como sei muito pouco do Windows, não sei onde está o problema.

SO: Windows 10 Pro 1709

    
por Vlastimil 22.02.2018 / 07:26

2 respostas

1

Localização do perfil revelada com:

echo $PROFILE
C:\Users\vlastimil\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

Assim, depois de alterar o caminho + nome, o problema foi resolvido.

    
por 22.02.2018 / 07:45
0

Há uma diferença se você estiver executando o console do powershell ou o powershell ISE.

link

Onde você coloca seu perfil só funcionará quando for executado a partir do console. O ISE não verá ou usará este perfil.

    
por 22.02.2018 / 07:48