Bagaimana cara mendapatkan nomor seri hard drive dari baris perintah?

39

Dari prompt perintah berbasis Windows NT (Windows XP dan 7), bagaimana saya bisa mendapatkan nomor seri hard drive sebagai variabel? Yang saya lihat adalah nomor seri drive hard disk fisik

Luke Kanada REINSTATE MONICA
sumber
Untuk Windows xp, lihat pertanyaan ini untuk metode yang tepat: superuser.com/q/708146/24010
Luke Kanada REINSTATE MONICA
2
Jika Anda memiliki banyak hard drive seperti saya, gunakan ini untuk membantu Anda mengetahui yang mana: wmic diskdrive get name,size,model,SerialNumber...Source
Enissay
Kemungkinan terkait: Mendapatkan nomor seri HDD .
G-Man Mengatakan 'Reinstate Monica'

Jawaban:

56

Coba perintah ini

vol C:

ini akan mendapatkan nomor seri volume yang diberikan oleh windows.

wmic diskdrive dapatkan nomor seri

ini mendapatkan nomor seri pabrikan dari hard drive.

Moab
sumber
Saya tidak melihat bahwa dalam pertanyaannya, mungkin dia perlu menamai ulang judulnya Bung, "Bagaimana cara mendapatkan nomor seri hard drive dari baris perintah?"
Moab
Saat menggunakan wmic diskdrive get serialnumbersaya menerima pesan Invalid XML. Apa artinya?
Maxbester
Saya mendapatkan kesalahan kueri yang tidak valid untuk wmic diskdrive get serialnumber.
atoMerz
1
@ Maxbester dan @atoerz: Saya punya kedua masalah. Invalid XMLdisebabkan karena memiliki lebih dari satu drive yang terhubung dan Invalid queryterjadi karena saya menggunakan Windows XP. Lihat jawaban ini untuk kedua masalah: stackoverflow.com/questions/9287450/…
Matthias Braun
2
Peringatan! wmic diskdrive get serialnumber(dan Win32_DiskDrivekelas WMI secara umum) mengembalikan nomor seri dengan setiap pasangan karakter dibalik. Jadi, jika label hard drive Anda bertuliskan "abcd1234" WMI akan melaporkan nomor seri Anda sebagai "badc2143". Informasi lebih lanjut di sini .
rojo
5
  • Apa yang Anda lihat BUKAN nomor seri hard drive.

  • Ini disebut Volume Serial Number . Itu dihasilkan pada saat membuat dan memformat volume / partisi.

  • Anda bisa mendapatkannya dengan menggunakan perintah di command prompt: C:\> vol c:jika C:drive yang Anda ingin ambil Nomor Seri Volume untuk.

  • Yang bisa Anda lakukan adalah mengarahkan output dari perintah itu ke file: C:\> vol c: > myvol.txtdan itu akan disimpan sebagai file teks di file AndaC:

  • Saya melampirkan tangkapan layar dengan highlight:

masukkan deskripsi gambar di sini

  • File disimpan di root C:

masukkan deskripsi gambar di sini

  • Seperti inilah tampilan myvol.txtfile di Notepad:

masukkan deskripsi gambar di sini

aliasgar
sumber
Pertanyaan diedit; maaf untuk informasi yang salah
Luke Kanada REINSTATE MONICA
1
Sebelum mempertimbangkan untuk memilih jawaban ini, harap dicatat bahwa itu diposkan sebelum OP mengklarifikasi pertanyaan awal. Jawaban ini memang benar untuk pertanyaan awal.
Saya katakan Reinstate Monica
nomor seri yang diambil dengan cara ini tidak cocok dengan nomor seri di SeaTools untuk Windows ???
PrimitiveNom
5

Dalam nada yang sama dengan jawaban Moab, tetapi menggunakan PowerShell kali ini:

Get-CimInstance Win32_DiskDrive | Select-Object Model,SerialNumber

Perintah ini mendapatkan turunan dari Win32_DiskDrivekelas WMI dan menampilkan model setiap disk drive di komputer dan nomor seri yang sesuai dari instance tersebut.

Jawaban ini mengasumsikan PowerShell 3.0 atau lebih baru. Jika menjalankan versi yang lebih lama, gunakan Get-WmiObjectdi tempat Get-CimInstance.

Pada Windows 8 dan yang lebih baru, Anda juga dapat menggunakan perintah ini:

Get-PhysicalDisk | Select-Object FriendlyName,SerialNumber
bwDraco
sumber
4

Dalam file batch satu pendekatan adalah:

  1. Perintah VOL untuk menghasilkan nomor seri sebagai teks bersama dengan teks yang tidak kita inginkan.
  2. CARI untuk memotongnya hanya ke garis dengan nomor seri.
  3. FOR untuk mengambil token ke-5 (bagian di antara pembatas) pada baris dengan nomor seri.
  4. SET untuk menetapkan ke variabel lingkungan

for /f "tokens=5 delims= " %%a in ('vol c: ^| Find "Serial Number"') do (
set VOLSERIAL=%%a
)
Brian
sumber
Pertanyaan diedit; maaf untuk informasi yang salah
Luke Kanada REINSTATE MONICA
2
Sebelum mempertimbangkan untuk memilih jawaban ini, harap dicatat bahwa itu diposkan sebelum OP mengklarifikasi pertanyaan awal. Jawaban ini memang benar untuk pertanyaan awal.
Saya katakan Reinstate Monica