Я хочу відобразити всю додану модель diskdrive, ім'я, індекс та розмір у командному рядку, який я використовую нижче простий код
wmic diskdrive GET index,caption,name,size /format:table
Вихід
Caption Index Name Size
SAMSUNG SSD PM830 2.5" 7 0 \\.\PHYSICALDRIVE0 256052966400
Seagate backup plus 1 \\.\PHYSICALDRIVE1 536870912000
Я хочу той же вихід, що і вище, за винятком того, що я хотів би, щоб розмір відображався в ГБ
Я думаю, що є певний спосіб зробити це за допомогою циклів і тимчасових файлів vb.
Я спеціально шукаю Windows cmd код. Хтось може допомогти?
Я в змозі зробити перетворення розміру і відобразити його на cmd
for /f "tokens=1,2" %a in ('WMIC DISKDRIVE GET Name^,Size ^|FINDSTR /I /V "Name"') do @echo wsh.echo "%a" ^& " size=" ^& FormatNumber^(cdbl^(%b^)/1024/1024/1024, 2^)^& " GiB" > %temp%\tmp.vbs & @if not "%b"=="" @echo( & @cscript //nologo %temp%\tmp.vbs & del %temp%\tmp.vbs
Вихід
\\.\PHYSICALDRIVE0 Size=238.47 (GB)
Але я все ще не в змозі правильно відобразити назву моделі. Я просто не в змозі змусити цикл працювати за призначенням (у моєму випадку в назві моделі є пробіли між наведеними нижче кодами, щоб просто надрукувати моделі.
for /f "tokens=1-5 skip=1" %a in ('wmic diskdrive GET model') do @echo. %a %b %c %d %e
Вихід
SAMSUNG SSD PM830 2.5" 7
Чи може хтось допомогти мені у поєднанні обох кодів таким чином, щоб вони відображалися як
SAMSUNG SSD PM830 2.5" 7 \\.\PHYSICALDRIVE0 Size=238.47 (GB)