Как изменить путь подключенного диска через командный файл?
Я написал командный файл для удаления файлов в различных местах, которые старше 2 недель.
net use Y: \\servername1\c$
cd /d Y:\Reports
SET _CmdResult=NONE
FOR /F "tokens=*" %%a IN ('forfiles -p "Y:\Reports" -s -m *.* -d -14 -c "cmd /c del @file" 2^>^&1 ^| FINDSTR ERROR') DO SET _CmdResult=%%a
IF "%_CmdResult%" == "ERROR: No files found with the specified search criteria." (
SET errorlevel=0
) ELSE (
SET errorlevel=1
)
IF "%_CmdResult%" == "NONE" SET errorlevel=0
net use Y: /delete /y
timeout 10
net use Y: \\servername2\c$
cd /d Y:\Reports
SET _CmdResult=NONE
FOR /F "tokens=*" %%a IN ('forfiles -p "Y:\Reports" -s -m *.* -d -14 -c "cmd /c del @file" 2^>^&1 ^| FINDSTR ERROR') DO SET _CmdResult=%%a
IF "%_CmdResult%" == "ERROR: No files found with the specified search criteria." (
SET errorlevel=0
) ELSE (
SET errorlevel=1
)
IF "%_CmdResult%" == "NONE" SET errorlevel=0
net use Y: /delete /y
У меня проблема в том, что после первого экземпляра net use Y: /delete /y
консоль закрывается. Без /y
консоль просто ожидает подтверждения, поэтому никогда не движется.
Я попытался удалить первый экземпляр net use Y: /delete /y
из сценария, надеясь, что следующая команда net use Y: \\servername2\c$ /y
просто переназначит ее, но она ошибки, которые уже используются.
Я знаю, что мог бы подключить различные диски в начале сценария для указанных серверов c, но если я хочу использовать сценарий для удаления файлов с нескольких серверов, которые могут получить Грязно, если буква диска уже используется в какой-то момент в будущем, это также кажется очень неэффективным (больше, чем мой сценарий, вероятно, уже есть)
Я также мог бы иметь несколько сценариев для каждого расположения сервера, но опять-таки думаю, что это будет быть аккуратно обработанным в 1 скрипте.
Так есть ли способ изменения пути подключенного диска?