【发布时间】:2016-01-04 05:16:23
【问题描述】:
我有一个每 10 分钟执行一次的 bat 文件。在 cmd 我看到“系统找不到指定的路径”。
有什么想法吗?
下面是代码:
@ECHO OFF
REM SET DATA, TIME AND PATH
SET DPATH="C:\keepalive\logs\"
SET DATES=%DATE:~7,2%_%DATE:~4,2%_%DATE:~10,4%
SET TIMES=%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
SET DAT=%DPATH%%DATES%.log
REM PRINTING USERNAME
ECHO USER:%USERNAME% 1>>%DAT% 2>&1
ECHO %DATES%%TIMES% 1>>%DAT% 2>&1
ECHO ACCESS WEBSITE 1>>%DAT% 2>&1
START iexplore http://example.com/sitecore/service/keepalive.aspx
ECHO WAITING FOR WEBSITE 1>>%DAT% 2>&1
PING 1.1.1.1 -n 1 -w 20000 >NUL
ECHO CLOSING WEBSITE 1>>%DAT% 2>&1
taskkill /F /T /IM iexplore.exe
EXIT
【问题讨论】:
-
老兄,把“@echo off”注释掉,改成“echo on”,.bat 文件会告诉你找不到什么文件路径!猜测:iexplorer。解决方案:一旦你打开“echo on”并验证它是“iexplorer”,就给它整个路径,例如
C:\Program Files\Internet Explorer\iexplore.exe。不要忘记使用引号 (")。 -
设置
dpath时,会包含引号。然后你的dat变成"C:\whatever\"logger.log。取出引号并将它们添加到每当您写入文件时,例如。echo hi 1>>"%dat%". -
另外:考虑用比 iexplore 更轻量级的东西代替,比如 curl
标签: batch-file windows-server-2012