Неправильный формат времени возвращен get-counter / export-counter в Powershell - PullRequest
2 голосов
/ 22 июня 2011

Командлеты get-counter / export-counter в powershell, похоже, возвращают даты в формате США, что в данном случае довольно нежелательно. Я просмотрел обе страницы get-help -full и не смог найти ничего, что позволило бы мне установить формат даты / времени. Есть ли другой способ сделать это, о котором я не знаю, или я застрял в американском формате даты?

Ответы [ 2 ]

3 голосов
/ 22 июня 2011

Это работает так, потому что культура вашего хоста "en-US" выглядит так:

Get-Culture | Format-List *

Вы можете изменить культуру во время выполнения скриптового блока, посмотрите на этот код

[System.Globalization.CultureInfo] $culture = "en-US"
$a = { [System.Threading.Thread]::CurrentThread.CurrentCulture = $culture
       [System.Threading.Thread]::CurrentThread.CurrentUICulture = $culture
       get-counter -Counter "\Processeur(_Total)\% temps processeur" -SampleInterval 2 -MaxSamples 3
     }
&$a

[System.Globalization.CultureInfo] $culture = "fr-FR"
$a = { [System.Threading.Thread]::CurrentThread.CurrentCulture = $culture
       [System.Threading.Thread]::CurrentThread.CurrentUICulture = $culture
       get-counter -Counter "\Processeur(_Total)\% temps processeur" -SampleInterval 2 -MaxSamples 3
     }

&$a

Об этом есть много информации в Поваренная книга Powershell

3 голосов
/ 22 июня 2011

Вы всегда можете переформатировать вывод:

get-counter -Counter "\Processor(_Total)\% Processor Time" -SampleInterval 2 -MaxSamples 3 | 
select @{l="Timestamp";e={([datetime]"$($_.timestamp)").tostring("yyyy/MM/dd HH:mm:ss")}},Readings | fl





Timestamp : 2011/06/21 18:33:09
Readings  : \\TMA-1\processor(_total)\% processor time :
            3.87658516403437



Timestamp : 2011/06/21 18:33:11
Readings  : \\TMA-1\processor(_total)\% processor time :
            1.93861060616496



Timestamp : 2011/06/21 18:33:13
Readings  : \\TMA-1\processor(_total)\% processor time :
            3.10139633471207
...