批处理文件未在Windows上使用任务计划程序完全执行

时间:2016-09-15 14:13:00

标签: mysql batch-file scheduled-tasks

我有以下批处理代码,当我双击批处理时代码执行正常但是当我尝试通过Windows任务调度程序运行它时,它只能部分运行。我无法理解为什么。

基本上,代码删除所有行ergo,运行到mysql -e "DELETE FROM software_it.hardware" -u root并且不再执行。任何帮助都会很棒。

@ECHO OFF
setlocal enabledelayedexpansion
mysql -e "DELETE  FROM software_it.hardware" -u root 
FOR %%f IN ("*.csv") DO (
  set old=%%~dpnxf
  set new=!old:\=\\!
  mysql -e "load data local infile '"!new!"' into table software_it.hardware  COLUMNS TERMINATED BY ',' IGNORE 1 ROWS" -u root
  echo %%~nxf DONE
)

1 个答案:

答案 0 :(得分:0)

从任务计划程序运行时,可能是当前目录'将与您直接运行脚本时使用的不同。因此,我建议添加以下第三行

IF /I "%CD%\" NEQ "%~dp0" PUSHD "%~dp0"