У меня есть список компьютеров с рекламой, и мне нужен их список с указанием времени последней перезагрузки. Я нашел несколько команд вроде Get-WmiObject -ClassName win32_operatingsystem -ComputerName xxx | select csname, lastbootuptime
но это не то, что мне нужно. Мне нужен сценарий, потому что компьютеров много.
У меня нет опыта работы с PowerShell, если бы кто-нибудь мог мне помочь с некоторыми предложениями.
PS C:\Users\XxX> Get-wmiobject win32_operatingsystem -ComputerName LC006909 | select csname, @{label='LastRestart';expression={$_.ConverToDateTime($_.LastBootUpTime)}}
csname LastRestart
------ -----------
LC006909
Я получаю этот вывод ... пустой в LastRestart.
Для меня systeminfo очень медленная. Если у вас есть powershell 3, вы сможете использовать что-то вроде
Get-CimInstance -ComputerName $yourcomputerObj -ClassName win32_operatingsystem | select csname, lastbootuptime
или
Get-WmiObject win32_operatingsystem -ComputerName $yourcomputerObj | select csname, @{LABEL='LastBootUpTime';EXPRESSION={$_.ConverttoDateTime($_.lastbootuptime)}}
Никсфо ответ определенно правильный, но я хочу добавить, как получить время последней загрузки для нескольких компьютеров (при необходимости вывод также может быть перенаправлен в файл):
Получите время последней загрузки для нескольких машин
$compname = Get-Content -Path C:\computers.txt
foreach ($comp in $compname) {
Get-WmiObject win32_operatingsystem -ComputerName $comp| select CSName, @{LABEL='LastBootUpTime';EXPRESSION={$_.ConverttoDateTime($_.lastbootuptime)}}
}
C:\computers.txt
- введите сюда имена хостов компьютеров по очереди
Я всегда использую
systeminfo | find "Time"
который выводит
System Boot Time: 16/09/2015, 08:41:28
Time Zone: (UTC) Dublin, Edinburgh, Lisbon, London
Есть много способов узнать время последней загрузки:
systeminfo | find /i "Boot Time"
подойдет, например, (в удобочитаемом формате). Имейте в виду, что здесь есть разные языки, например, в Германии вам нужно будет ввести "Systemstartzeit" с помощью grep.
Вы также можете попробовать (не зависящий от языка) wmi:
wmic os get lastBootUpTime
который даст вам время загрузки в обратном формате (например, 20150915100340.494919 + 120)