Exportar chave do registro para CSV

0

Atualmente, estou procurando todas as informações sobre a licença do SolidWorks na rede. Preciso de ajuda para escrever um script para o powershell para ver uma lista de hosts que estão em um arquivo csv / txt e depois executar o seguinte comando salvando o resultado em um formato csv com o nome do computador, entrada de registro de licença solidwork.

Este é o comando que estou usando até agora,

Invoke-Command -ComputerName NAME -Command {Get-ItemProperty -Path HKLM:\SOFTWARE\SolidWorks\Licenses}

Por padrão. O SolidWorks armazena suas informações de licença no seguinte caminho do registro

COMPUTERNAME\HKEY_LOCAL_MACHINE\SOFTWARE\SolidWorks\Licenses\Serial Numbers\Solidworks
    
por Chris 20.04.2018 / 21:03

1 resposta

0

Algo parecido com isso lhe dará um ponto de partida:

#Get computers from text file. 1 compute per line
$myComputerList = Get-Content C:\Installs\computerList.txt

#Loop Through Array
ForEach ($computer in $myComputerList) {
    #Execute a command on the computer
    Invoke-Command -ComputerName $computer -ScriptBlock {
        #This is the command to execute
        #Grab the registry value you want and hold it in a variable
        $value = Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\" -Name ProductName
        #grab the machine name you're working on
        $computerName = $env:COMPUTERNAME
        #comma separate them and spit them out to a file.  This can be a UNC path on a network share
        ($computerName + "," + $value) | Out-File -FilePath C:\Installs\Output.csv -Append
    }
}

Existem todos os tipos de adições que você pode fazer, como manipular vários valores do Registro, testar se a máquina está ou não ligada antes de se conectar, lidar com erros de acesso e máquinas não contatáveis etc. - mas isso não é um serviço de criação de scripts. Eu acabei de te dar um breve ponto de partida

    
por 23.04.2018 / 07:14