コンピューター内のすべてのハードドライブのシリアル番号を取得するには、次を使用します。
wmic diskdrive get serialnumber
しかし、私が働いているハードドライブのシリアル番号を取得したいと思います。
説明:ハードドライブが2つあり、そのうちの1つには2つのパーティションCとDがあります。もう1つには1つのパーティションEがあります。コマンドラインでCパーティションで作業している場合、wmic
コマンドを入力すると、Eパーティションのあるハードドライブのシリアル番号ではなく、このパーティションのあるハードドライブのシリアル番号のみを取得したい。
ソフトウェアのライセンスコードを作成したい。ソフトウェアは任意のパーティションにインストールできます。これらのパーティションを具体的に含むハードドライブのシリアル番号が必要です。フォーマットや再インストールなどを行うと、パーティションのボリュームシリアル番号は変わりますが、ハードドライブのシリアル番号は変わりません。シリアル番号を変更するソフトウェアがあることは知っていますが、私の可能なクライアントはそれほど賢くありません。
返信ありがとうございます。私が必要としている答えを見つけました。ここでそれをあなたと共有します。コマンドはPowerShellにあります:
Get-Disk (Get-Partition -DriveLetter 'C').DiskNumber
出力は次のようになります。
Number Friendly Name Serial Number HealthStatus OperationalStatus Total Size Partition Style
------ ------------- --------------------------------------------------
0 ST3802110AS 5LR2DQ65 Healthy Online 74.53 GB MBR
これが私が作成したPowershellスクリプトで、うまくいけばあなたが望むことを実行します。
$volumes = get-wmiobject Win32_Volume foreach ($vol in $volumes) { if($vol.Caption -eq 'c:\') { $vol | fl Caption,Name,DeviceID,SerialNumber } } pause
これにより、C:\ドライブに関連して必要なものが得られるはずです。別のドライブ文字が必要な場合は、上記のスクリプトの4行目のc:\
に変更するだけです。
出力は次のようになります。
Caption : C:\
Name : C:\
DeviceID : \\?\Volume{770f1368-bacc-4401-98db-a6c43bc4ef11}\
SerialNumber : 3469401274
注:これら4つだけでなく、利用可能なすべてのドライブ情報が必要な場合は、上記から| fl Caption,Name,DeviceID,SerialNumber
を削除し、代わりにその行に$vol
を残すことができます。