1
resposta

[Dúvida] ValueFromPipelineByPropertyName

Na parte 2 do curso de PS1, aula 3 video (Atribuindo características aos parâmetros), o professor no ensina utilizar o ValueFromPipelineByPropertyName, ele declara essa propriedade como "Fullname". Porém ao tentar fazer isso, sempre que executo a função Get-FileSHA1 passando parametros pela linha de comando, (gci . -Recurse -File) | Get-FileSHA1, sem utilizar o atributo .Fullname dos objetos, a função consegue analisar corretamente os hash's, porém se utilizo (gci . -Recurse -File).FullName | Get-FileSHA1, dessa forma, os hash's são gerados corretamente.

Tentei procurar na internet soluções, de deparei com outras maneiras de usar essa propriedade,

  1. Utilizando [alias ('FullName')]

  2. [ValueFromPipelineByPropertyName("FullName")]

Mesmo assim o erro persiste, podem me ajudar ?

1 resposta

Olá Adriano, tudo bem com você?

Peço desculpas pela demora em obter um retorno.

O script desenvolvido na aula para obter o hash, foi desenvolvido de forma que ele execute tanto passando explicitamente o atributo FullName, da seguinte forma: (gci . -Recurse -File).FullName | Get-FileSHA1. Como sem que ocorra a passagem do atributo FullName, devido o uso da propriedade de parâmetro ValueFromPipelineByPropertyName, para que a execução do script da seguinte forma seja possível: (gci . -Recurse -File) | Get-FileSHA1. Como apresentado na imagem abaixo:

Imagem contendo a exibição do PowerShell com a execução do script Get-FileSHA1 e a exibisão dos hash

Peço que verifique se o seu script está conforme apresentado na aula, no seguinte link você terá acesso ao código criado na aula. Caso ocorra mudanças, salve o arquivo.

Vale ressaltar que, após realizar a edição de um arquivo de script, é necessário realizar novamente o seu carregamento na sessão do PowerShell, usando o Dot-Source (colocando um ponto . e o caminho para o script).

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!