none
Get-WmiObject の locale 指定方法 RRS feed

  • 質問

  • 日本語Windowsでたとえば

    gwmi win32_networkadapter

    とすると、その一部分が

    AdapterType      : イーサネット 802.3

    のように日本語文字列を含む結果が得られます。
    ここで英語文字列が得たい場合はロケールを明示的に指定して

     

    gwmi win32_networkadapter -locale MS_409

    とすればいいのかと思ったのですが、
    これでも日本語で帰ってきてしまいます。

    どうすればいいのでしょう。
    何か指定方法を間違えているでしょうか。

     

    2010年11月12日 2:52

回答

  • >/LOCALE              クライアントが使用する必要がある言語 ID です。

    とてもだまされた気がしますが、Localeが該当する番号だったときの結果を返すスイッチのようです。(資料を探してみたのですが、明記しているものは見つけることができませんでしたm(_ _)m)
    実行そのものはOSのロケールのWMIが使われますので結果も日本語になって戻ってきます。

    文字列であると、バージョンなどによって表記が微妙に変わってくるため、数字のプロパティをお勧めします。


    wmi win32_networkadapter AdapterType,AdapterTypeID

    2010年11月13日 5:32

すべての返信

  • >/LOCALE              クライアントが使用する必要がある言語 ID です。

    とてもだまされた気がしますが、Localeが該当する番号だったときの結果を返すスイッチのようです。(資料を探してみたのですが、明記しているものは見つけることができませんでしたm(_ _)m)
    実行そのものはOSのロケールのWMIが使われますので結果も日本語になって戻ってきます。

    文字列であると、バージョンなどによって表記が微妙に変わってくるため、数字のプロパティをお勧めします。


    wmi win32_networkadapter AdapterType,AdapterTypeID

    2010年11月13日 5:32
  • "Localeが該当する番号だったときの結果"
    というのは、よくわからないのですが、
    "実行そのものはOSのロケールのWMIが使われます"
    というので、何が起こっているのかわかったように思います。
    ありがとうございます。

    指定したlocaleで取得して欲しいところです。

    確かにスクリプト内の判別などでは、
    できるだけ文字列に頼らない方が良いですね。

     

    2010年11月13日 5:47