No prompt de comando baseado no Windows NT (Windows XP e 7 especificamente), como posso obter o número de série de um disco rígido como variável? O que eu estou vendo é o número de série da unidade de disco rígido física
No prompt de comando baseado no Windows NT (Windows XP e 7 especificamente), como posso obter o número de série de um disco rígido como variável? O que eu estou vendo é o número de série da unidade de disco rígido física
Respostas:
vol C:
isso obterá o número de série do volume fornecido pelo Windows.
wmic diskdrive obter número de série
isso obtém o número de série do fabricante do disco rígido.
wmic diskdrive get serialnumber
, recebo a mensagem Invalid XML
. O que isso significa?
wmic diskdrive get serialnumber
.
Invalid XML
foi devido a ter mais de uma unidade conectada e Invalid query
ocorreu porque eu estava no Windows XP. Veja esta resposta para os dois problemas: stackoverflow.com/questions/9287450/…
wmic diskdrive get serialnumber
(e a Win32_DiskDrive
classe WMI em geral) retorna o número de série com cada par de caracteres invertido. Portanto, se a etiqueta do seu disco rígido exibir "abcd1234", o WMI reportará o número de série como "badc2143". Mais informações aqui .
O que você está olhando NÃO é o número de série do disco rígido.
É chamado de número de série do volume . É gerado no momento da criação e formatação do volume / partição.
Você pode obtê-lo usando um comando no prompt de comando: C:\> vol c:
se C:
é a unidade para a qual você deseja recuperar o Número de Série do Volume.
Tudo o que você pode fazer é redirecionar a saída desse comando para um arquivo: C:\> vol c: > myvol.txt
e ele será armazenado como um arquivo de texto no seuC:
Estou anexando uma captura de tela com os destaques:
C:
myvol.txt
arquivo se parece no Bloco de Notas: Na mesma linha que a resposta de Moab, mas usando o PowerShell desta vez:
Get-CimInstance Win32_DiskDrive | Select-Object Model,SerialNumber
Este comando obtém uma instância da Win32_DiskDrive
classe WMI e gera o modelo de cada unidade de disco no computador e o número de série correspondente dessa instância.
Esta resposta assume o PowerShell 3.0 ou posterior. Se estiver executando uma versão mais antiga, use Get-WmiObject
no lugar de Get-CimInstance
.
No Windows 8 e posterior, você também pode usar este comando:
Get-PhysicalDisk | Select-Object FriendlyName,SerialNumber
Em um arquivo em lotes, uma abordagem é:
for /f "tokens=5 delims= " %%a in ('vol c: ^| Find "Serial Number"') do (
set VOLSERIAL=%%a
)