none
WMICのAPPENDスイッチの挙動 RRS feed

  • 質問

  • お世話になっております。

    wmic コマンドのスイッチでAPPENDを指定すると、ファイルへの追記と合わせて、ヘルプの内容に反して値がコマンドプロンプトに表示されます。

    https://technet.microsoft.com/en-us/library/cc787035.aspx
     wmic /OUTPUT:%TEMP%\A.TXT BASEBOARD

    と指定すれば、ヘルプ通りの処理が行われます(画面表示なし、ファイル上書き)。しかし

     wmic /APPEND:%TEMP%\A.TXT BASEBOARD

    と指定すると、画面表示されてしまいます。しかも、これをバッチ内で起動させると、ファイルへの追記もされなくなります。

    結果をファイルに追記し、画面表示させないようにすることが可能でしたら、スイッチの指定方法をご教示ください。

    よろしくお願いいたします。

    2015年7月14日 6:20

回答

すべての返信

  • 取得対象のクラスが PRODUCT などであれば、バッチファイル上でもうまく動かすことができました。BASEBOARD などは、どうもうまくいきません。管理者として実行させてもダメです。

    表示については > nul で抑止させることにします。


    • 編集済み koma_deko 2015年7月14日 6:41
    2015年7月14日 6:40
  • チャブーンです。

    単純な話しなのですが、ふつうのリダイレクトを使う方法ではダメなのでしょうか?

    @echo off
    wmic baseboard >> %TEMP%\A.txt


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    2015年7月14日 7:48
  • チャブーン様

    ご返信ありがとうございます。

    コマンドプロンプトのリダイレクトでは、Unicode?で出力されてしまうようです。

    /OUTPUTスイッチでは、ANSIで出力されます。

    他からANSIで書き出した出力ファイルに追記することが、今回 /APPENDスイッチを使いたい理由です。


    • 編集済み koma_deko 2015年7月14日 7:55
    2015年7月14日 7:54
  • チャブーンです。

    他からANSIで書き出した出力ファイルに追記することが、今回 /APPENDスイッチを使いたい理由です。

    cmd /A オプションで実行してみてはどうでしょうか?


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    • 回答の候補に設定 佐伯玲 2015年7月16日 1:04
    • 回答としてマーク koma_deko 2015年7月16日 4:02
    2015年7月14日 9:31
  • どうも有難う御座います。

    改めて wmic baseboard を発行させてみたところ、ANSIで出力されました。昨日 Unicode で出力されたような表示(1文字ずつ半角空白が入る)現象が発生した経緯が不明ですが、また起きた場合は試してみます。

    wmic の APPEND スイッチのヘルプ記載内容は誤っている(かコマンドのほうが誤って実装された)ようですね。

    2015年7月16日 4:06