Скрипт Powershell для сравнения VolumeID с DriveLetter

У меня есть сценарий powershell, выполняющий wbadmin с источником C: для целевого тома iSCSI, который указан его идентификатором тома (\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}). Само резервное копирование работает отлично, я просто хотел добавить в скрипт функцию автономного резервного копирования. К сожалению, robocopy не может использовать идентификатор тома в качестве источника для задания копирования и отклонит его как неизвестный параметр.

Есть ли способ удобно получить фактическую букву диска из идентификатора тома, чтобы я мог заменить ее перед вызовом robocopy?

Вывод "mountvol" выглядит очень многообещающе, но если есть встроенная функция powershell, я бы предпочел использовать ее.

Я уже пробовал Get-PSDrive и Get-Volume, кажется, нет способа заставить их вывести VolumeID.

1 ответ

Решение

Может быть, это должно помочь:

gwmi Win32_Volume |
    ? { $_.deviceID -eq '\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\'} 
          | select -expand name
Другие вопросы по тегам