Ho lo script seguente che voglio che venga distribuito su più server e ottenga il valore di un registro. Sfortunatamente, al momento sta semplicemente postando il valore del registro locale della macchina su cui sto eseguendo lo script.Ottieni il valore di registro remoto
Come si esegue lo script sul registro remoto?
SCRIPT:
clear
#$ErrorActionPreference = "silentlycontinue"
$Logfile = "C:\temp\NEWnetbackup_version.log"
Function LogWrite
{
param([string]$logstring)
Add-Content $Logfile -Value $logstring
}
$computer = Get-Content -Path c:\temp\netbackup_servers1.txt
foreach ($computer1 in $computer){
$Service = Get-WmiObject Win32_Service -Filter "Name = 'NetBackup Client Service'" -ComputerName $computer1
if (test-connection $computer1 -quiet)
{
$NetbackupVersion1 = $(Get-ItemProperty hklm:\SOFTWARE\Veritas\NetBackup\CurrentVersion).PackageVersion
if($Service.state -eq 'Running')
{
LogWrite "$computer1 STARTED $NetbackupVersion1"
}
else
{
LogWrite "$computer1 STOPPED $NetbackupVersion1"
}
}
else
{
LogWrite "$computer1 is down" -foregroundcolor RED
}
}
Grazie - questo funziona; come faccio a incorporare questo nel LogWrite che voglio che il valore venga emesso nel file di log che ho? – lara400
@ lara400 Come stai facendo nel tuo codice: 'LogWrite" $ computer1 STARTED $ NetbackupVersion1 "'. Ma forse non ho capito la tua domanda ... –
Grazie mille - la tua ha fatto il trucco ...... come ha fatto Shay! – lara400