Articles of powershell

PowerShell Set-Content e Out-File Qual é a diferença?

No PowerShell, qual é a diferença entre Out-File e Set-Content ? Ou Add-Content e Out-File -append ? Eu encontrei se eu usar os dois contra o mesmo arquivo, o texto é mal disfarçado . (Uma segunda pergunta menor, > é um apelido para Out-File , certo?)

Como posso usar o powershell para executar um instalador?

Eu estou tentando instalar um software que, quando feito manualmente, tem opções de configuração que você pode escolher ao passar pelo processo. Eu estou tentando descobrir uma maneira de automatizar isso usando o PowerShell, mas estou preso a como eu posso definir essas opções de configuração. Acredito que precisaria executar o comando start-process no instalador […]

Como faço para passar parâmetros nomeados com Invoke-Command?

Eu tenho um script que eu posso executar remotamente via Invoke-Command Invoke-Command -ComputerName (Get-Content C:\Scripts\Servers.txt) ` -FilePath C:\Scripts\ArchiveEventLogs\ver5\ArchiveEventLogs.ps1 Desde que eu use os parâmetros padrão, ele funciona bem. No entanto, o script tem 2 parâmetros [switch] nomeados (-Debug e -Clear) Como posso passar os parâmetros comutados através do comando Invoke-Command? Eu tentei o -ArgumentList mas […]

como faço loop através de uma linha de um arquivo csv no powershell

Eu quero processar um arquivo csv no powershell, mas eu não sei o que os headers de coluna no arquivo CSV serão quando ele é processado. Por exemplo: $path = “d:\scratch\export.csv” $csv = Import-csv -path $path foreach($line in $csv) { foreach ($head in $line | get-member | where-object {$_.MemberType -eq “NoteProperty”} | select Definition) { […]

Selecione os valores de uma propriedade em todos os objects de uma matriz no PowerShell

Digamos que temos uma matriz de objects $ objects. Digamos que esses objects tenham uma propriedade “Name”. Isso é o que eu quero fazer $results = @() $objects | %{ $results += $_.Name } Isso funciona, mas pode ser feito de uma maneira melhor? Se eu fizer algo como: $results = objects | select Name […]

Como inserir um comando de várias linhas

É possível dividir uma linha de comando do PowerShell em várias linhas? No Visual Basic eu posso usar o sublinhado ( _ ) para continuar o comando na próxima linha.

Qual devo usar: “Write-Host”, “Write-Output” ou “ :: WriteLine”?

Estou tentando me familiarizar com o PowerShell. Uma coisa simples que estou tentando resolver é que parece haver várias maneiras diferentes de enviar mensagens. Qual devo usar e qual é a diferença, e existe uma maneira convencional de fazer isso? Eu também noto que se eu usar: write-host “count=” + $count O + é incluído […]

Como classificar por nome de arquivo da mesma maneira que o Windows Explorer?

Este é o famoso problema da ordem “ASCIIbetical” versus a ordem “Natural” aplicada ao PowerShell. Para poder classificar em powershell da mesma forma que o Explorer, você pode usar esse wrapper sobre a API StrCmpLogicalW, que realmente executa a sorting natural para o Windows Explorer. Isso exigirá algum encanamento embora. No entanto, este artigo sugere […]

Qual é a melhor maneira (mais limpa) de ignorar a saída no PowerShell?

Digamos que você tenha um método ou um CMDlet que retorne algo, mas não deseje usá-lo e não deseje gerá-lo. Eu encontrei estas duas maneiras: Add-Item > $null [void]Add-Item Add-Item | Out-Null O que você usa? Qual é a abordagem melhor / mais limpa? Por quê?

Não é possível pausar ou dormir após o Select-Object

Em alguns casos, se eu tentar pausar ou dormir após um comando Select-Object , a pausa / suspensão ocorrerá antes do comando. Por exemplo, com Get-NetAdapter | Select-Object Name,Status Pause ou Get-NetAdapter | Select-Object Name,Status | Where-Object {$_ -ne $null} Pause a saída é: Pressione Enter para continuar …: Nome Status —- —— Wi-Fi Up […]