4 Replies Latest reply on Apr 12, 2019 12:30 AM by nitta0814

    PowerCLIの出力をCSVにすると読めない文字になる

    nitta0814 Novice

      以下のコマンドでPowerCLIの出力をCSVにすると読めない文字になります。

       

      【コマンド】

      PS C:\WINDOWS\system32> $global:DefaultVIServers | Get-AdvancedSetting | Format-Table -Autosize -Wrap | Export-Csv -Encoding UTF8 -NoTypeInformation -Path C:\work\Exppppp.csv

      PS C:\WINDOWS\system32> $global:DefaultVIServers | Get-AdvancedSetting | Format-Table -Autosize -Wrap | Export-Csv -Encoding Unicode -NoTypeInformation -Path C:\work\Exppppp.csv

      PS C:\WINDOWS\system32> $global:DefaultVIServers | Get-AdvancedSetting | Format-Table -Autosize -Wrap | Export-Csv -Encoding Default -NoTypeInformation -Path C:\work\Exppppp.csv

       

      【Exppppp.csv】※一部抜粋

      "ClassId2e4f51ef21dd47e99d3c952918aff9cd","pageHeaderEntry","pageFooterEntry","autosizeInfo","shapeInfo","groupingEntry"

      "033ecb2bc07a4d43b5ef94ed5a35d280",,,"Microsoft.PowerShell.Commands.Internal.Format.AutosizeInfo","Microsoft.PowerShell.Commands.Internal.Format.TableHeaderInfo",

      "9e210fe47d09416682b841769c78b8a3",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

      "27c87ef9bbda4f709f6b4002fa4af63c",,,,,

       

      解決方法をご教示頂けないでしょうか。

        • 1. Re: PowerCLIの出力をCSVにすると読めない文字になる
          kawaman Hot Shot
          vExpertVMware Employees

          csv に出力するのであれば、 Format-Table -Autosize -Wrap  の箇所は不要で、

          その代わりに Select-Objectc 等で必要な列を選んで、Export-Csv する事で CSV にデータが反映されます。

           

          例えばこんな感じです。

          $global:DefaultVIServers | Get-AdvancedSetting | Select-Object Name,Value   | Export-Csv -Encoding UTF8 -Path C:\Exppppp.csv

          • 2. Re: PowerCLIの出力をCSVにすると読めない文字になる
            nitta0814 Novice

            いつもご回答頂きありがとうございます。

             

            Format-Table -Autosize -Wrap」はCSV時には不要であること承知いたしました。

            実行結果もIPアドレス以外は正常に出力されました。

             

            IPアドレスの件は、PowerShell側の仕様だと思いますので、

            WEBで対策を調査したいと思います。

             

            ありがとうございました。

            • 3. Re: PowerCLIの出力をCSVにすると読めない文字になる
              kawaman Hot Shot
              vExpertVMware Employees

              ちなみに IPアドレスは どの項目の値がどのようにCSVに出力されていますか?

              Export-Csv でよくあるのが 改行コードを含む値もそのまま出力されるため、CSVとして開くとその部分がずれてしまう事があります。

               

              IPアドレスは出力されているが、改行入ってしまっている様ならば

              Value内の改行を手で除くか、直接ファイルを開くのではなく、Excelを開いてからインポートで取り込むなどで回避できるかもしれません。

              • 4. Re: PowerCLIの出力をCSVにすると読めない文字になる
                nitta0814 Novice

                補足して頂きありがとうございます。

                 

                今回、Get-VMGuestコマンドを使用したところ、

                IPアドレスのカラムは、以下のように出力されてしまいました。

                 

                 IPアドレス:System String[]

                 Disks:VMware.VimAutomation.ViCore.Impl.V1.VM.Guest.DiskInfolmpl[]

                 Nics:VMware.VimAutomation.VICore.Impl.V1.VM.Guest.NicInfolmpl[]