TL; DR -
(echo select disk=0 & echo list partition & (for /l %A in (1,1,10) do @echo select disk=next &@echo list partition)) | diskpart | findstr /i /v /r "^$ > microsoft ^reached ^select ^there ^the\ start"
Подробности -
Команда diskpart.exe может получить то, что вы хотите.Для этого требуются права администратора, но поскольку вы упомянули отключение служб, это не показалось проблемой.
Вместо того, чтобы взаимодействовать с уникальной системой меню DISKPART, этот пример будет слепо запрашивать список разделов на первых 11 дисках.(и отфильтровать ненужные строки ..).Должно быть достаточно.:-)
Cmd:
(echo select disk=0 & echo list partition & (for /l %A in (1,1,10) do @echo select disk=next &@echo list partition)) | diskpart | findstr /i /v /r "^$ > microsoft ^reached ^select ^there ^the\ start"
Вывод из моей действующей системы:
Disk 0 is now the selected disk.
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Primary 1863 GB 1024 KB
Disk 1 is now the selected disk.
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Primary 350 MB 1024 KB
Partition 2 Primary 270 GB 351 MB
Partition 3 Recovery 845 MB 271 GB
Partition 4 Primary 204 GB 272 GB
Disk 2 is now the selected disk.
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Primary 931 GB 1024 KB