• 締切済み

ハードディスク容量を調べて利用したい。

いつも参考にしております。 今回、ハードディスクの容量を調べて、容量毎に違う処理を行うバッチファイルを作成したいと考えております。 具体的には、500GB、1TB、2TBの3種類のHDDがあって、なにが接続されているかわからない状態で、それぞれの容量に合った処理をバッチで行いたいのです。 容量(未フォーマット状態)を取得するには、Diskpart等を使えば取得することはできるのですが、 その取得できた情報(容量)をどうすれば、バッチ処理の分岐にいかせるが、わかりません。 ご教授いただきたいので、よろしくお願いいたします。

みんなの回答

  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.2

No.1です。補足です。 別のPCでためしてみたところ、if文のところはGTR → GEQ のようが良いかもしれません。 if %GB% GEQ 2000 goto 2TB if %GB% GEQ 1000 goto 1TB if %GB% GEQ 500 goto 500GB

  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.1

こんばんは。 ざっくりした容量計算ですが、以下のサンプルで500GB、1TB、2TBの区別はできると思います。 HDDが複数接続される場合を想定して、処理を繰り返すようにしています。 echo off for /f "delims=" %%a in ('wmic diskdrive get size /value^|find "Size"') do set %%a&&call:sub exit /b :sub set GB=%Size:~0,-10% if %GB% GTR 2000 goto 2TB if %GB% GTR 1000 goto 1TB if %GB% GTR 500 goto 500GB echo DISK SIZE = %GB% goto end :2TB REM 2TBの時の処理をここから記述 goto end :1TB REM 1TBの時の処理をここから記述 goto end :500GB REM 500GBの時の処理をここから記述 :end goto :EOF

関連するQ&A