Script para sair do programa antes do Robocopy

0

Estou configurando um script de backup para um cliente que será agendado para ser executado uma vez por mês para fazer backup do diretório do iTunes de 200GB para o NAS dele. É compilado usando alguns parâmetros definidos e ROBOCOPY %_source% %_dest% %_what% %_options% . Como posso adicionar algo ao início desse script para sair de todos os aplicativos abertos antes da tarefa Robocopy?

Eu poderia usar o taskkill.exe, mas estou preocupado que isso possa danificar alguns arquivos do iTunes se estiver em execução no momento. Existe uma maneira limpa de desistir de tudo?

    
por Reece 17.03.2014 / 05:59

2 respostas

0

Tanto quanto sei que os scripts em lote não são capazes de fechar suavemente, seria melhor usar um vbscript para fechar o uso do iTunes

Set objitunes = CreateObject("Itunes.Application")
objItunes.quit

Isso deve fazer o que você quiser.

Em seguida, use

CreateObject("WScript.Shell").Run("""C:\myfile.bat""")

para abrir o arquivo de lote de cópias ou usar o robocopy diretamente do arquivo vbs (sei que isso pode ser feito, mas não sei como)

Se você usa um arquivo em lotes, pode usar

tasklist /FI "IMAGENAME eq itunes.exe" 2>NUL | find /I /N "itunes.exe">NUL
if "%ERRORLEVEL%"=="1" robocopy C:\your\folder\ N:\your\other\folder /mir

para copiar apenas quando o iTunes for fechado

    
por 17.03.2014 / 21:12
0

Com base este página, parece que taskkill deve funcionar.

taskkill /IM itunes.exe

Eu tentei em alguns programas (bloco de notas, ide, leitor de música) e eles todos ou desligamento corretamente ou trouxe o diálogo de confirmação.

    
por 21.03.2014 / 15:23