2

我在 Windows 2000 SP4 服务器上使用 bat 文件在数据库关闭时复制数据库文件。一旦 bat 文件点击 xcopy 命令,它就会进行复制,但永远不会返回 bat 文件继续执行其他命令(启动数据库等)。我应该提到 xcopy 需要几个小时。bat文件是否有某种超时或时间最大值?这是正常的吗?如果是这样,有没有办法解决这个问题?

4

4 回答 4

3

批处理文件不会超时。听起来您可能会遇到来自 XCOPY 的提示,例如“您确定”提示。

确保您已将必要的命令行开关添加到 XCOPY 以使其静默。

我知道的有:

-Y to suppress prompts about overwriting files

-C continue even if errors occur
于 2008-11-03T14:24:56.763 回答
2

此外,请确保您正在运行 XCOPY.EXE 应用程序,并且没有在您的路径中的某处找到 XCOPY.BAT 文件。(从批处理文件调用批处理文件会阻止返回,除非您使用 CALL 命令)

并且,确保在 XCOPY 期间没有覆盖批处理文件本身。

于 2008-11-03T14:28:21.907 回答
1

大概在您的 backup.log 文件中一切看起来都正常吗?看起来您正在将 STDOUT 重定向到您的日志文件,而不是 STDERR - 建议将 2>&1 添加到命令行末尾,以确保您不会丢失日志中的任何错误信息。

于 2008-11-03T19:40:09.843 回答
0

我知道 .bat 或 .cmd 文件没有超时。但是,可能有关于启动的进程吗?你是如何启动它的?

于 2008-11-03T14:24:17.997 回答