Як я можу отримати серійний номер жорсткого диска як змінну із командного рядка на базі Windows NT (спеціально для Windows XP та 7). Я дивлюся на серійний номер фізичного жорсткого диска
Як я можу отримати серійний номер жорсткого диска як змінну із командного рядка на базі Windows NT (спеціально для Windows XP та 7). Я дивлюся на серійний номер фізичного жорсткого диска
Відповіді:
vol C:
це отримає серійний номер тома, наданий йому вікнами.
wmic diskdrive отримати серійне число
це отримує серійний номер виробника жорсткого диска.
wmic diskdrive get serialnumber
я отримую повідомлення Invalid XML
. Що це означає?
wmic diskdrive get serialnumber
.
Invalid XML
було пов’язано з тим, що було підключено більше одного диска, і він Invalid query
стався тому, що я був у Windows XP. Дивіться цю відповідь на обидва питання: stackoverflow.com/questions/9287450/…
wmic diskdrive get serialnumber
(і Win32_DiskDrive
клас WMI взагалі) повертає серійний номер з кожною парою символів, перевернутими. Тож якщо на етикетці вашого жорсткого диска написано "abcd1234", WMI повідомить про ваш серійний номер як "badc2143". Більше інформації тут .
Що ви дивитесь, це НЕ серійний номер жорсткого диска.
Він називається томовим серійним номером . Він генерується під час створення та форматування об'єму / розділу.
Ви можете отримати його, скориставшись командою у командному рядку: C:\> vol c:
якщо C:
це диск, для якого потрібно отримати серійний номер гучності.
Все, що ви можете зробити, це перенаправити вихід цієї команди на файл: C:\> vol c: > myvol.txt
і він буде збережений як текстовий файл у вашомуC:
Я додаю скріншот із основними моментами:
C:
myvol.txt
виглядає файл у Блокноті: Так само, як і відповідь Моаба, але цього разу використовуючи PowerShell:
Get-CimInstance Win32_DiskDrive | Select-Object Model,SerialNumber
Ця команда отримує екземпляр Win32_DiskDrive
класу WMI і виводить модель кожного дискового накопичувача на комп’ютері та відповідний їй серійний номер із цього примірника.
Ця відповідь передбачає PowerShell 3.0 або новішої версії. Якщо використовується старша версія, використовуйте Get-WmiObject
замість Get-CimInstance
.
У Windows 8 та новіших версіях ви також можете використовувати цю команду:
Get-PhysicalDisk | Select-Object FriendlyName,SerialNumber
У пакетному файлі один підхід:
for /f "tokens=5 delims= " %%a in ('vol c: ^| Find "Serial Number"') do (
set VOLSERIAL=%%a
)