40 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			PowerShell
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			PowerShell
		
	
	
	
	
	
|  | $local_path    = "D:\Telegraf-Replace-Win-Config" | ||
|  | $remote_path   = "D:\Telegraf" | ||
|  | $csv           = Get-Content "$local_path\win-all-nt.csv" | ||
|  | $conf          = Get-Content "$local_path\telegraf.conf" -Raw -Encoding UTF8 | ||
|  | $srv_name_list = ($csv | ConvertFrom-Csv -Delimiter ",").name | ||
|  | foreach ($srv in $srv_name_list) { | ||
|  |     #$srv = "tvsds-polit0110.delta.sbrf.ru" | ||
|  |     $session = New-PSSession $srv -ErrorAction Ignore | ||
|  |     if ($session) { | ||
|  |         Invoke-Command -Session $session { | ||
|  |             $name = (Get-WmiObject -Class Win32_ComputerSystem).Name+"."+(Get-WmiObject -Class Win32_ComputerSystem).Domain | ||
|  |             $local_conf  = "$using:remote_path\telegraf.conf" | ||
|  |             $remote_conf = $using:conf | ||
|  |             if (Test-Path $local_conf) { | ||
|  |                 Write-Host "Telegraf path to $name - true" -ForegroundColor Green | ||
|  |                 Get-Service telegraf | Stop-Service | ||
|  |                 #(Get-Filehash -Algorithm SHA256 $local_conf).Hash | ||
|  |                 $remote_conf | Out-File $local_conf -Encoding UTF8 | ||
|  |                 #(Get-Filehash -Algorithm SHA256 $local_conf).Hash | ||
|  |                 Get-Service telegraf | Start-Service -ErrorAction Ignore | ||
|  |                 $status = Get-Service telegraf | Select-Object | ||
|  |                 if ($status.Status -eq "Stopped") { | ||
|  |                     Get-Service telegraf | Start-Service -ErrorAction Ignore | ||
|  |                     $status = $(Get-Service telegraf | Select-Object) | ||
|  |                 } | ||
|  |                 if ($status.Status -eq "Stopped") { | ||
|  |                     Write-Host "Telegraf service $($status.Status) to $($using:srv)" -ForegroundColor Red | ||
|  |                 } else { | ||
|  |                     Write-Host "Telegraf service $($status.Status) to $($using:srv)" -ForegroundColor Green | ||
|  |                 } | ||
|  |             } else { | ||
|  |                 Write-Host "Telegraf path to $name - false" -ForegroundColor Red | ||
|  |             } | ||
|  |         } | ||
|  |         Disconnect-PSSession $session > $null | ||
|  |         Remove-PSSession $session > $null | ||
|  |     } else { | ||
|  |         Write-Host "Connect to $srv - false" -ForegroundColor Red | ||
|  |     } | ||
|  | } |