none
Powershell 문의 RRS feed

  • 질문

  • 안녕하세요. 여러서버의 정보를 수집할 경우가 생길 것 같아 아래와 같이 서버 정보 수집하는 파워쉘을 작성해보았습니다만..

    수정하고 싶은게 있습니다.

    Set-ExecutionPolicy Bypass


    $hostname = hostname
    $hostname
    ### Hostname 명으로 txt 파일 생성 + hostname 입력
    $hostname > C:\$hostname".txt"

    ### H/W Model 확인
    $hwmodel = (get-wmiobject win32_computersystem).Model >> C:\$hostname".txt"

    ### H/W Serial Number 확인
    ###$SN=(Get-WmiObject –Class Win32_DiskDrive).SerialNumber >> C:\$hostname".txt"
    wmic bios get SerialNumber >> C:\$hostname".txt"

    ## 메모리 용량 확인.
    (gwmi win32_operatingsystem).TotalVisibleMemorySize / 1024000 >> C:\$hostname".txt"

    ### Disk 사용량 확인.
    Function Get-DiskFreeSpace
    {
      Get-WmiObject Win32_LogicalDisk -Filter "DriveType=3" | Format-Table -AutoSize `
      @{Label="DiskDrive";Expression={$_.VolumeName + " (" + $_.DeviceID + ")"}},`
      @{Label="Size";Expression={($_.Size/1gb) -as [int]};FormatString="{0:N1}G"},`
      @{Label="Used";Expression={($_.Size/1gb)-($_.FreeSpace/1gb) -as [int]};FormatString="{0:N1}G"},`
      @{Label="Avail";Expression={($_.FreeSpace/1gb) -as [int]};FormatString="{0:N1}G"},`
      @{Label="Use%";Expression={(($_.Size/1gb)-($_.FreeSpace/1gb))/($_.Size/1gb) * 100 -as [int]};FormatString="{0:N1}%"}
    }
    ## FileAllocationUnitSize 확인.
    Get-Volume  | Format-List DriveLetter,FileSystemLabel, AllocationUnitSize

    Get-DiskFreeSpace >> C:\$hostname".txt"
    Get-Content C:\$hostname".txt"

    systeminfo >> C:\$hostname"_sys.txt"

    ii C:\

     

    이렇게 서버의 정보를 받아오는 파워쉘을 적당히 만들어봤는데요..

     

    K-04-164651.png

     

    왼쪽 처럼 txt 파일이 나옵니다.

    이걸 csv 형태로 받아서 오른쪽 처럼 데이터를 보기 편하게 받을 수 있는 방법이 있나요?

    여러대의 정보를 수집해야할 경우가 생길 것 같아서요..

    2019년 9월 17일 화요일 오전 7:50

모든 응답

  • 안녕하세요,

    테스트를 진행해보지는 못 했습니다만 csv로 내보냈을때는 출력 결과가 어떤가요?

    감사합니다.


    ※ 응답이 문제 해결에 도움이 되었다면 [답변으로 표시] 버튼을 눌러 주시기 바랍니다. 이는 유사한 증상을 겪는 다른 사용자들에게 도움이 될 수 있습니다. 만약 TechNet 구독자 지원에 대한 의견이 있다면, tnsf@microsoft.com 으로 문의할 수 있습니다.

    2019년 9월 17일 화요일 오전 8:14
    중재자
  • 위 사진 왼쪽이랑 다르지 않습니다.

    2019년 9월 17일 화요일 오전 9:14
  • 안녕하세요,

    다양하게 접근을 해볼 수 있겠지만, 쉽게 구현이 가능할 것 같지는 않습니다. Powershell 포럼 등의 도움을 받아보시는 것도 좋겠습니다.

    https://social.technet.microsoft.com/Forums/en-US/home?forum=winserverpowershell

    간단한 방법으로는 각 원하는 열의 변수를 지정해준 다음, 아래와 같이 진행해보는 방법정도를 생각해볼 수 있을 것 같습니다.

    Import-CSV c:\test.csv | select-object @{name="Hardware";Expression={$hwmodel}}, @{name="Memory";Expression={$Memory}}, @{name="Serial Number";Expression={$SN}} |export-csv c:\test.csv -notypeinformation

    감사합니다.


    ※ 응답이 문제 해결에 도움이 되었다면 [답변으로 표시] 버튼을 눌러 주시기 바랍니다. 이는 유사한 증상을 겪는 다른 사용자들에게 도움이 될 수 있습니다. 만약 TechNet 구독자 지원에 대한 의견이 있다면, tnsf@microsoft.com 으로 문의할 수 있습니다.

    2019년 9월 18일 수요일 오전 4:39
    중재자