このコマンドの出力を変数に書き込もうとしていますが、構文がうまく機能しません...
私の WMIC クエリは次のとおりです:
wmic PATH SoftwareLicensingProduct WHERE "ProductKeyID like '%-%' AND Description like '%Windows%'" get LicenseStatus
誰か助けてくれませんか?
答え1
出力は次のようになります:を変数にLicenseStatus 1
キャプチャしたい1
次のバッチファイルを使用します。
@echo off
for /f "usebackq tokens=2" %%i in (`wmic PATH SoftwareLicensingProduct WHERE "ProductKeyID like '%-%' AND Description like '%Windows%'" get LicenseStatus`) do set _variable=%%i
@echo %_variable%
参考文献
- Windows CMD コマンドラインの AZ インデックス- Windows コマンド ラインに関連するあらゆることに関する優れたリファレンス。
- /fの場合- 別のコマンドの結果に対してコマンドをループします。
- セット- CMD 環境変数を表示、設定、または削除します。SET で行われた変更は、現在の CMD セッションの期間中のみ保持されます。
答え2
次のように使用します:
@echo off
for /f "usebackq tokens=2" %%i in (`wmic PATH SoftwareLicensingProduct WHERE "ProductKeyID like '%%-%%' AND Description like '%%Windows%%'" get LicenseStatus`) do set _variable=%%i
@echo %_variable%
基本的には最初の回答のコードと同じですが、パーセント記号が 2 つあります。
BB