会社で多数の HDD をアーカイブしています。Windows OS インストールからホスト名とユーザー リストを取得する PowerShell スクリプトがあり、ドライブのシリアル番号もプログラムで見つけたいと考えています。これを行う必要がある次の Powershell コード (ほぼ完成) がありますが、複雑な点もあります。
$Disks = Get-WMIObject -class win32_PhysicalMedia
$SerialNumber = foreach($Disk in $Disks) {IF ($Disk.SerialNumber -ne ' WD-WCC2EAV91692') {[do something here]}}
ドライブを USB HDD ドックに接続していますが、(SATA ケーブル経由で、まだ外部でテストしていない) ドライブを内部で接続した状態でコンピューターを起動すると、SerialNumber
フィールドに値が入力されているようです。ただし、コンピューターの起動後に接続すると、SerialNumber
フィールドは常に空白になります。ドライブを接続するときにコンピュータにこの情報を再スキャンさせる方法はありますか、またはこの情報は、たとえば BIOS などによって起動時にのみ収集されますか?