Usando START /wait com scripts em lote MozBackup

Usando START /wait com scripts em lote MozBackup

SO: Windows 7 64 bits

Eu tenho três arquivos em lote.

  1. FirefoxBackup.bat
  2. ThunderbirdBackup.bat
  3. Firefox_Thunderbird_Backup.bat

O script interno Firefox_Thunderbird_Backup.baté mostrado abaixo:

@echo off
@echo Welcome to Firefox and Thunderbird Automated Backup!
CALL "D:\Scripts\FirefoxBackup.bat"
CALL "D:\Scripts\ThunderbirdBackup.bat"

O script dentro FirefoxBackup.batdo arquivo é muito semelhante ao ThunderbirdBackup.bat. Consulte o script em lote de backup do Firefox abaixo:

@echo off
@echo Firefox backup will begin shortly!

echo.
@echo Deleting old Firefox backup file(s)...
@echo off
DEL /F "D:\Mozilla Products Backups\Firefox*.pcv"
TIMEOUT /T 2 /NOBREAK

echo.
@echo off
@echo Firefox is quitting...
TIMEOUT /T 2 /NOBREAK

@echo off
@echo off tasklist /nh /fi "imagename eq firefox.exe" | find /i "firefox.exe" >nul && ( taskkill /f /im firefox.exe /T )
TIMEOUT /T 3 /NOBREAK

echo.
@echo Firefox backup is in progress!
START "" "C:\Program Files (x86)\MozBackup\MozBackup.exe" "D:\Scripts\Default.firefoxprofile"
TIMEOUT /T 15 /NOBREAK

echo.
@echo Firefox backup successful!
echo.

@echo Firefox has re-launched.
echo.
START "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe"

A parte que me interessa é:

START "" "C:\Program Files\MozBackup\MozBackup.exe" "D:\Scripts\Default.firefoxprofile"
TIMEOUT /T 15 /NOBREAK

Explicação do trecho de código acima:

MozBackup.exe é iniciado junto com um parâmetro. Este parâmetro é o Default.firefoxprofilearquivo que o MozBackup entende e pode ser editado manualmente conforme oinstruções aqui.

Intenções:

Gostaria de me livrar do tempo de espera manual (15s) e aproveitar START /wait. Dessa forma, o Firefox será reiniciado somente após o término da execução do Mozbackup. Não tenho certeza de como fazer isso, considerando que já existem três parâmetros, a saber "", C:\Program Files\MozBackup\MozBackup.exe, e D:\Default.firefoxprofile. É possível conseguir isso de qualquer maneira?

Obrigado!

Responder1

A resposta foi muito mais simples do que eu esperava. Eu só precisava usar a opção /W. Percebi que a opção /WAIT não funciona.

Aqui está a solução:

START /W "" "C:\Program Files (x86)\MozBackup\MozBackup.exe" "D:\Scripts\Default.firefoxprofile"
START /W /B "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe"

O que acontece agora é que o Firefox será relançadosó depoisO MozBackup terminou a execução. Também aplicarei isso ao script de backup do Thunderbird. Obrigado por ler e espero que este script de backup seja útil para alguém no futuro :)

Referência

informação relacionada