这是我想用作cronjob的代码的开头。根据您输入的参数,您可以以不同的模式启动脚本。
问题是,如果输入错误或没有参数,我会收到语法错误,而不是使用回显。
" -v"在这一点上不能语法处理。
@ECHO OFF
SETLOCAL EnableDelayedExpansion
set v=False
set q=False
if %1 EQU -v (
set v=True
) else (
if %1 EQU -q (
set q=True
) else (
ECHO %DATE:~-4%%DATE:~-7,2%%DATE:~-10,2%_%Time% WARN False Parameter %1 >> C:\Users\Jeff\Desktop\%DATE:~-4%%DATE:~-7,2%%DATE:~-10,2%_Log_2.34.log
REM Usage
echo Usage [-v] for verbose mode
echo [-q] for quiet mode
echo.
pause
goto EOF
)
)
答案 0 :(得分:0)
好的,我找到了答案。
@ECHO OFF
SETLOCAL EnableDelayedExpansion
set v=False
set q=False
if /i "%~1" EQU "-v" (
set v=True
) else (
if /i "%~1" EQU "-q" (
set q=True
) else (
ECHO %DATE:~-4%%DATE:~-7,2%%DATE:~-10,2%_%Time% WARN False Parameter %1 >> C:\Users\Jeff\Desktop\%DATE:~-4%%DATE:~-7,2%%DATE:~-10,2%_Log_2.34.log
REM Usage
echo Usage [-v] for verbose mode
echo [-q] for quiet mode
echo.
pause
goto EOF
)
)
/我将接受%1中的两个单词,如果%1为空,则不会失败。