操作系统:Windows 7 64位
我有三个批处理文件。
- Firefox备份程序
- Thunderbird备份.bat
- Firefox_Thunderbird_备份.bat
里面的脚本Firefox_Thunderbird_Backup.bat
如下所示:
@echo off
@echo Welcome to Firefox and Thunderbird Automated Backup!
CALL "D:\Scripts\FirefoxBackup.bat"
CALL "D:\Scripts\ThunderbirdBackup.bat"
文件中的脚本FirefoxBackup.bat
与 非常相似ThunderbirdBackup.bat
。请参阅下面的 Firefox 备份批处理脚本:
@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"
我感兴趣的部分是:
START "" "C:\Program Files\MozBackup\MozBackup.exe" "D:\Scripts\Default.firefoxprofile"
TIMEOUT /T 15 /NOBREAK
对上述代码片段的解释:
MozBackup.exe 会随参数一起启动。此参数是Default.firefoxprofile
MozBackup 可以理解的文件,可以根据此处的说明。
意图:
我想摆脱手动等待时间(15秒),并利用 START /wait
""
。这样,Firefox 仅在 Mozbackup 执行完毕后才会重新启动。考虑到已经有 3 个参数,即、C:\Program Files\MozBackup\MozBackup.exe
和,我不确定该怎么做D:\Default.firefoxprofile
。无论如何,有可能实现这一点吗?
谢谢你!
答案1
答案比我想象的要简单得多。我只需要使用 /W 开关。我注意到 /WAIT 开关不起作用。
解决方案如下:
START /W "" "C:\Program Files (x86)\MozBackup\MozBackup.exe" "D:\Scripts\Default.firefoxprofile"
START /W /B "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
现在的情况是,Firefox 将重新启动仅在那之后MozBackup 已完成执行。我还将把它应用于 Thunderbird 的备份脚本。感谢您的阅读,我希望这个备份脚本将来对某人有用 :)