Executar tarefa agendada apenas se a unidade de rede mapeada não estiver presente?

Executar tarefa agendada apenas se a unidade de rede mapeada não estiver presente?

É possível no Windows 10 executar uma tarefa agendada apenas se uma unidade de rede mapeada não estiver presente?

Histórico: tenho uma tarefa, um script em lote, que mapeia duas unidades de rede para um serviço de backup (CrashPlan). O script em lote verifica se a unidade está presente if exist Y:\ (...)e mapeia-a caso contrário net use Y: ....

Isso funciona, mas como esses caminhos de rede podem não estar presentes na inicialização ou login do sistema (NAS desligado quando eu inicio meu computador), preciso repetir essa tarefa regularmente para garantir que as unidades sejam mapeadas se/quando os caminhos de rede ficarem disponíveis .

Mas eu realmente só preciso repetir a tarefa se a unidade ainda não tiver sido mapeada, então gostaria de pular a tarefa sempre que as unidades já estiverem presentes.

De qualquer forma, não há mal nenhum em executar a tarefa - ela apenas ignora o net usecomando, mas o log ficaria mais limpo se eu pudesse pular a tarefa quando ela não fosse necessária.

O "problema" subjacente é garantir que as duas unidades mapeadas estejam sempre presentes no serviço CrashPlan, em execução na conta SYSTEM, sempre que os caminhos de rede estiverem disponíveis (os dispositivos NAS estão online). Sinta-se à vontade para sugerir abordagens completamente diferentes para isso, mas talvez tente mantê-las nos comentários, para evitar confundir a resposta desta pergunta. Eu ficaria feliz em postar essa pergunta separadamente, se for aconselhado a fazê-lo.

Responder1

Adicione ao seu script um comando que desative esta tarefa em caso de sucesso em algum lugarif exist Y:\ (...) and maps it otherwise net use Y: ...

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

e adicione mais uma tarefa que habilite "YourBatchScriptTask" na inicialização do computador

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

mas se fosse eu, manteria essa parte de "verificação", já que você não pode garantir que a conexão de rede ao seu NAS não seja interrompida. (suponha que algum gatinho brinque com cabos Ethernet)

informação relacionada