ディレクトリをバックアップするためのバッチの使用 (Chrome)。ネイティブの Windows スケジュール タスク マネージャーを使用して、ping を実行し、ファイルを実行します (うまく機能しています)。ただし、就寝すると (Chrome をシャットダウンするのを忘れると)、当然ながら完全なバックアップは取得されません。
そのため、 を追加しましたelse if
が、Chrome をシャットダウンすると、ファイルは実行されますが、かなり「ダーティ」になります。 「if not」を追加するにはどうすればよいでしょうか。 内にネストするのでしょうかelse if
。
私が実行しているのは次のとおりです。これも動作しますが (Chrome がシャットダウンされているかどうかに関係なく)、「クリーン」ではありません。「Chrome が存在しません」などのエラーを表示して、クリーンにしたいと思います。
IF EXIST CHROME COMMAND (
set drive=C:
echo ### Killing Chrome Task
taskkill /F /IM chrome.exe /T
PING 1.1.1.1 -n 1 -w 60000 >NUL
)
ELSE (
:: variables
set drive=E:\BrowserBackups\Chrome
set folder=%DATE:~4,2%_%DATE:~7,2%_%DATE:~10,4%_%RANDOM%
set backupcmd=xcopy /C/E/H/I/R/K/Y
echo ### Backing up directory...
%backupcmd% "%USERPROFILE%\Local Settings\Application Data\Google\Chrome"
"%drive%\%folder%"
)
pause
「IF NOT EXISTS」コマンドをどこに置くかわかりません。
答え1
バッチ ファイルを次のように構成します。
@echo off
tasklist /fi "imagename eq chrome.exe" 2>NUL | find /c /i "chrome.exe">NUL
if [%errorlevel%]==[0] (
echo Chrome is running!
echo Kill it and then backup settings.
) else (
echo Chrome is not running!
echo Can backup settings now.
)