Я створюю простий скрипт резервного копіювання командного рядка, щоб використовувати robocopy, щоб віддзеркалити "важливі" речі до моєї коробки NAS. Я б вважав за краще не покладатися на жорстко закодовані літери дисків для цього вікна NAS. У скрипті я хотів би відобразити тимчасову букву диска, скопіювати відповідні файли і позбутися відображеного диска. Я не хочу припускати, що якщо ця буква диска вже відображена, це вказує на те місце, яке я очікую. Я також не хочу "припускати", що деяка буква диска доступна, коли я зіставляю диск, таким чином, провідний '*'.
net use * \\nasbox\sharename password /user:username /persistent:no
Який правильний спосіб у моєму .bat-скрипті витягти цю букву диска для використання в наступних командах? Я думав, що можу зібрати кілька варіантів розпізнавання маркерів "за", але я також підозрюю, що повинен бути простіший спосіб, ніж езотеричний для синтаксису.
C:\>net use * \\nasbox\sharename password /user:username /persistent:no Drive Z: is now connected to \\nasbox\sharename. The command completed successfully. C:\>
Як тільки у мене буде відображена буква диска, я хотів би продовжити виконання команд у відповідності до:
robocopy C:\path\to\important\stuff %NewDrive%\path\to\backup /MIR /Z