web-dev-qa-db-ja.com

バッチまたはコマンドプロンプトからのwmi出力をフィルター/パイプする方法

特定のHDD用の小さなスクリプトを書く必要があります。
次のコマンドを使用して、HDDをサイズで検出します。

 C:\>wmic logicaldisk get size,freespace,caption | find "750153363456"

 E:       27996512256  750153363456

次に、その出力(この場合はE :)からのドライブ文字を変数に格納する必要があります。どうやってやるの?

1
MrMAG

ドライブを見つけるためにシリアル番号を使用しないのはなぜですか? wmicの結果をファイルに保存する1つの可能な解決策:

REM replace D4B12CD with your drive serialnumber

wmic logicaldisk get caption,volumeserialnumber |findstr D4B12CD > c:\temp\Hdd.txt 
for /f %%i in (c:\temp\hdd.txt) do set mydrive=%%i

REM now mydrive contains the letter of your drive
echo %mydrive%
1
Loïc MICHEL