當我運行下面的代碼時,我得到「taskkill不是預期的」。程序在我可以設置%stop%的值之前關閉。我該如何解決這個錯誤?批處理 - 命令不是預期的
@echo off
set ucs=ucs.exe
cls
echo.
echo Check %ucs%...
tasklist /FI "IMAGENAME eq %ucs%" 2>NUL | find /I /N "%ucs%">NUL
if %errorlevel%==0 (
echo %ucs% is running!
echo You need to stop it before editing ucsdb
echo 1 - Stop
echo 0 - Menu
set /p "stop=Stop %ucs%?"
if %stop%==1 taskkill /im %ucs% /t && goto sqlitebrowser
if %stop%==0 goto sqlitemenu
if not %stop%==1 if not %stop%==2 echo Option "%stop%" not exist! && timeout /t 2 /nobreak >NUL && goto sqlitemenu
) ELSE (
echo %ucs% is not running
echo Loading SqliteBrowser...
timeout /t 2 /nobreak >nul
goto sqlitebrowser)
代碼編輯:!!!!
setlocal EnableDelayedExpansion
cls
echo.
echo Check %ucs%...
pause
tasklist /FI "IMAGENAME eq %ucs%" 2>NUL | find /I /N "%ucs%">NUL
if %errorlevel%==0 (
echo %ucs% is running!
echo You need to stop it before editing ucsdb
echo 1 - Stop
echo 0 - Menu
set /p "stop=Stop %ucs%?"
if !stop!==1 taskkill /im %ucs% /t && goto sqlitebrowser
if !stop!==0 goto sqlitemenu
if not !stop!==1 if not !stop!==0 echo Options "!stop!" not exist! && timeout /t 2 /nobreak >nul && goto sqlitemenu
...
如果不停止== 1,如果不停止== 0回聲選項 「停!」不存在!無法正常工作
我非常確定變量'%stop%'沒有被定義... – aschipfl
[批處理文件延遲擴展示例]的可能重複(http://stackoverflow.com/questions/10558316/example-of-批量延時擴展文件) –
在設置%stop%的值之前,程序關閉。 – Blank517