对于批处理,如果出现错误,您看到的最多是文本闪烁,然后程序结束。反正有没有放慢速度?或者在碰到错误时关闭它?
由于
答案 0 :(得分:14)
如果在MS-DOS窗口中从命令行执行批处理文件并发生错误,则只需查看窗口中的文本即可查看发生的情况。
另一方面,如果您通过在资源管理器中双击执行批处理文件,则批处理文件出现错误时,您将看不到任何内容。这是你的情况吗?如果是这样,最简单的解决方案是在MS-DOS窗口中测试批处理文件,直到它正常工作。
但是,如果在批处理文件结束时仍需要一种方法来停止关闭DOS窗口,则可以这样做:
这样,当您通过双击执行快捷方式时,DOS窗口将在批处理文件因任何原因结束后执行暂停。
答案 1 :(得分:4)
使用>重定向输出将其捕获到文件中。
您可能需要:命令> file 2>& 1
答案 2 :(得分:3)
从当前CMD.exe运行脚本,并将“exit / b 1”添加到脚本文件末尾。删除任何简单的“退出”。
答案 3 :(得分:3)
打开一个新的cmd窗口并在那里执行命令。发生错误时,新打开的窗口不会关闭。
start cmd /k [command]
这适用于我的基本命令。不确定它对更高级的东西是否有用。
答案 4 :(得分:3)
试试这个:
if NOT ["%errorlevel%"]==["0"] (
pause
exit /b %errorlevel%
)
答案 5 :(得分:2)
要在批处理脚本结束之前停止它,请将pause
命令放在一个新行上,这将使脚本在继续(或关闭)之前等待用户输入(如输入键)。
答案 6 :(得分:0)
第二次
grep("DAG36|G379", x)
# [1] 4 5
grepl("DAG36|G379", x)
# [1] FALSE FALSE FALSE TRUE TRUE
或10secs
x[ grepl("DAG36|G379", x) ] <- 0
x <- x[ grepl("DAG36|G379", x) ] # Easier version of removing relevant strings
x <- grep("DAG36|G379", x, invert = T, value = T) # More direct version
答案 7 :(得分:0)
这对我有用。与@ Sri7的答案类似,但您需要使用方括号和引号:
if NOT ERRORLEVEL 0 (
pause
)