2016-08-04 4 views
0

아래의 Powershell 명령을 실행하여 각 VM의 리소스 사용량을 얻습니다.내 스크립트 결과를 행으로 설정하는 방법

Measure-VM -Name * | select-object -property VMName, MeteringDuration, AverageProcessorUsage, AverageMemoryUsage, TotalDiskAllocation 

제 관심사는 결과 집합이 각 속성을 열로 반환하는 대신 행으로 반환된다는 것입니다.

결과

  • VMName
  • MeteringDuration
  • ...
  • ...

대한 존중 VMName MeteringDuration ...

I 이후 입술을 복사하고 싶다. 궁극적으로 Excel로, 나는 이것을 완화하는 방법이 있기를 바랬다. 도움에 미리 감사드립니다!

답변

2

PowerShell은 출력을 표시 할 때 형식을 가장 잘 추측합니다. Excel, CSV, 다른 형식으로 내보내는 경우 화면에 표시되는 내용이 전혀 영향을주지 않습니다.

Get-Thing | Export-Csv Things.csv 

그냥 서식 ˁ *을 사용하여 파일을 만들려고 방지하고 리디렉션이 여전히 완벽하게 정상적인 것입니다 실행

Get-Thing 

Property1: one 
Property2: two 
Property3: three 

: 콘솔이있는 경우입니다

그리고 모든 것이 잘 될 것이다.

+0

답변 해 주셔서 감사합니다. 위에 언급 한 스크립트를 내가 사용하고있는 스크립트에 통합 할 수 있습니까? 또한 서버에 MS Office가 설치되어 있지 않은 경우에도 Powershell이 ​​내보내기를 수행 할 수 있습니까? –

+0

Export-CSV는 항상 작동하며 외부 종속성이 없습니다. 전 지방 엑셀 파일을 쓰는 것이 어렵고 다른 일이 필요합니다. 예를 들어, 나는 epplus 라이브러리를 기반으로 한 라이터를 가지고 있으며, 다른 구현체는 Excel 자체를 사용할 수 있습니다 (따라서 Office가 필요합니다). Export-Csv는 더 간단합니다.'Measure-VM -Name * | 선택 개체 - 속성 VMName, MeteringDuration, AverageProcessorUsage, AverageMemoryUsage, TotalDiskAllocation | Export-Csv C : \ Temp \ YourFile.csv' –

+0

csv로 내 보낸 동안 MS Excel에서 구분 기호로 쉽게 분리 할 수 ​​있습니다. MS Excel을 설치해야하는 외부 DLL 또는 Com 객체 없이는 XLS/XLSX 문서로 데이터를 내보낼 수 없습니다. –