Запустить запланированное задание, только если подключенного сетевого диска нет?

650
Kjell Rilbe

Возможно ли в Windows 10 запустить запланированное задание, только если нет подключенного сетевого диска?

Предыстория: у меня есть задача, пакетный скрипт, который сопоставляет два сетевых диска для службы резервного копирования (CrashPlan). Пакетный скрипт проверяет наличие диска if exist Y:\ (...)и отображает его в противном случае net use Y: ....

Это работает, но поскольку эти сетевые пути могут отсутствовать при запуске системы или входе в систему (NAS отключается при запуске компьютера), мне нужно регулярно повторять эту задачу, чтобы обеспечить сопоставление дисков, если / когда сетевые пути станут доступны ,

Но мне действительно нужно повторять задачу только в том случае, если диск еще не был подключен, поэтому я хотел бы пропустить задачу, когда диски уже присутствуют.

В любом случае, выполнение задачи не повредит - она ​​просто пропускает net useкоманду, но журнал был бы чище, если бы я мог пропустить задачу, когда она не нужна.

Основная проблема заключается в том, чтобы два подключенных диска всегда присутствовали в службе CrashPlan, работающей под учетной записью SYSTEM, всякий раз, когда доступны сетевые пути (устройства NAS подключены). Не стесняйтесь предлагать совершенно разные подходы к этому, но, возможно, постарайтесь оставить их в комментариях, чтобы не загромождать ответ на этот вопрос. Я был бы рад опубликовать такой вопрос отдельно, если бы посоветовал это сделать.

0

1 ответ на вопрос

2
Alex

Добавьте в свой скрипт команду, которая отключит эту задачу при успешном выполнении где-то if exist Y:\ (...) and maps it otherwise net use Y: ...

schtasks.exe /CHANGE /TN "YourBatchScriptTask" /DISABLE 

и добавьте еще одну задачу, включающую «YourBatchScriptTask» при запуске компьютера

schtasks.exe /CHANGE /TN "YourBatchScriptTask" /ENABLE 

но если бы это был я, я бы оставил эту «проверочную» часть, поскольку вы не можете гарантировать, что сетевое подключение к вашему NAS не будет разорвано. (предположим, какой-то котенок играл с кабелями Ethernet)

Похожие вопросы