Я написал небольшой скрипт, чтобы получить некоторую базовую информацию с нескольких удаленных серверов. Но мой результат немного странный. Я считаю, что моя проблема связана с моей функцией $DRIVE
.Loop Issue - Remote Server
Код:
$serversList = 'svr01.xxx.com',
'svr03.xxx.com',
'svr05.xxx.com',
'svr06.xxx.com',
'svr08.xxx.com'
#End of Server List
Write-Output "Start of Hal0 `n";
ForEach ($server in $serversList) {
$OS = (Get-WmiObject -class Win32_OperatingSystem).Caption
$SYSNAME = (Get-WmiObject -class Win32_LogicalDisk -ComputerName $server).SystemName
$DRIVE = {
Get-WmiObject -Class Win32_LogicalDisk -ComputerName $server |
Where-Object {$_.DriveType -eq 3} |
Select-Object DeviceID, Description,`
@{"Label"="DiskSize(GB)";"Expression"={"{0:N}" -f ($_.Size/1GB) -as [float]}}, `
@{"Label"="FreeSpace(GB)";"Expression"={"{0:N}" -f ($_.FreeSpace/1GB) -as [float]}} |
FT -AutoSize
}
$server + ' | ' + $SYSNAME + ' | ' + $OS + ' | '
}
Write-Output "`n End of Hal0";
Результаты:
Start of Hal0
svr01.xxx.com | SVR01 SVR01 SVR01 SVR01 | Mic
rosoft Windows 8.1 Enterprise |
svr03.xxx.com | SVR03 SVR03 SVR03 SVR03 | Mic
rosoft Windows 8.1 Enterprise |
svr05.xxx.com | SVR05 SVR05 SVR05 SVR05 | Mic
rosoft Windows 8.1 Enterprise |
svr06.xxx.com | SVR06 SVR06 SVR06 SVR06 | Mic
rosoft Windows 8.1 Enterprise |
svr08.xxx.com | SVR08 SVR08 SVR08 SVR08 | Mic
rosoft Windows 8.1 Enterprise |
End of Hal0
То, что я надеялся, что мой результат будет чистой системы Полное имя, система Краткое название, OS, Hard Drive Free/Используемое пространство для каждого из 5 серверов.
svr08.xxx.com | svr08 | Windows 8 | C: 1111 MB Free/500 MB Used, E: 11 MB Free/10 MB Used.
Спасибо очень много для вашего ответа! Он работает прямо сейчас, но он производит нечетный вывод. http://imgur.com/QoNWp5G – TheAce
@TheAce Если вы хотите открыть файлы с расширением .csv в Excel, то файлы * должны * использовать ',' в качестве разделителя. Измените расширение на что-то другое (например, .txt), и вы можете указать, какие символы являются разделителями при открытии файла в Excel. –
Спасибо @Ansgar Я открыл его в блокноте, и он выглядит намного лучше. Теперь мой вопрос заключается в том, как я могу нажать эту новую информацию «Имя_сервера» | «FQDN» | «Диски» | «Операционная система» на таблицу SQL? – TheAce