2016-08-24 32 views
0

私のシナリオ:結果を追加するwmicコマンド

私はソフトウェアの詳細を収集するためにwmicコマンドを使用しています。これは正常に動作し、CSV> /softwarelist.csv

WMICの製品は、説明、名前、バージョン/形式を取得します。

しかし、同じ出力ファイルに結果を追加する必要があります。私は別のシステムでスクリプトを実行すると、出力を同じsoftwarelist.csvファイルに書き込む必要があります。

私はAPPENDコマンドを使用しようとしましたが、アクセス拒否エラーが発生します。

WMIC /APPEND:"\softwarelist.csv」製品を得る説明、名前、バージョン/フォーマット:任意の助けが理解されるであろう

CSV

...

答えて

1

読むRedirection

command > filename  Redirect command output to a file 
command >> filename  APPEND into a file 

>>を使用できます。次の構文を参照してください:

wmic product get description,name,version /format:csv >>/softwarelist.csv 

wmic/APPEND /?<filename>は、次の例を参照して、相対パスを受け入れないように見えるが

APPEND - Specifies the mode for output redirection. 
USAGE: 

/APPEND:<outputspec> 
NOTE: <outputspec> ::= (STDOUT | CLIPBOARD | <filename>) 
     STDOUT  - Output will be redirected to the STDOUT. 
     CLIPBOARD - Output will be copied on to CLIPBOARD. 
     <filename> - Output will be appended to the specified file. 

NOTE: Enclose the switch value in double quotes, if the value contains special 
     characters like '-' or '/'. 

wmic /APPENDも同様に動作するはずです。 dir /B "\softwarelist.csv"は、上記のコードスニペットの作品にそれ以降のwmic /APPENDを保証していること

==> dir /B "\softwarelist.csv" 
File Not Found 

==> >NUL wmic /APPEND:"\softwarelist.csv" product get description,name,version /format:csv 
Invalid file name. 

==> >NUL wmic /APPEND:"D:\softwarelist.csv" product get description,name,version /format:csv 

==> dir "\softwarelist.csv" | findstr "softwarelist.csv$" 
27.08.2016 19:47   48 644 softwarelist.csv 

注:裸のファイル名または完全修飾ファイル・パスのいずれかを使用します。

また、システムドライブのルートディレクトリが保護されています(ビスタ回以降?)、アクセスが拒否されましたメッセージを参照してください。

==> pushd c: 

==> wmic product get description,name,version /format:csv >/softwarelist.csv 
Access is denied. 
関連する問題