【问题标题】:Sleep/Wait command in Batch [duplicate]批处理中的睡眠/等待命令[重复]
【发布时间】:2012-03-03 01:02:51
【问题描述】:

我想在我的批处理文件中添加时间延迟。批处理文件将在后台静默运行。请帮帮我。

【问题讨论】:

  • Windows XP、Windows 7、64 位和 32 位 Vista
  • 如果没有更多信息,很难为您提供帮助。什么批处理语言?你都尝试了些什么?什么系统?延迟多久? 所有这些项目都是提供一个好的答案所必需的。
  • 只是我想使用 DOS 命令在后台运行一个批处理文件。我将使用 XP、Vista 和 Win7 的操作系统。预计延迟时间可能约为 3-10 秒。我毫不拖延地尝试了批处理,但它没有删除文件夹,因为它被另一个应用程序使用。所以我必须等待几秒钟才能退出
  • ping 命令弹出命令提示符..批处理应该在后端运行..我们可以隐藏命令提示符..

标签: batch-file wait sleep


【解决方案1】:
ping localhost -n (your time) >nul

例子

@echo off
title Test
echo hi
ping localhost -n 3 >nul && :: will wait 3 seconds before going next command (it will not display)
echo bye! && :: still wont be any spaces (just below the hi command)
ping localhost -n 2 >nul && :: will wait 2 seconds before going to next command (it will not display)
@exit

【讨论】:

    【解决方案2】:

    timeout 5

    延迟

    timeout 5 >nul

    延迟而不要求您按任意键取消

    【讨论】:

    【解决方案3】:

    好的,是的,您使用timeout 命令休眠。但是要默默地完成整个过程,使用 cmd/batch 是不可能的。其中一种方法是创建一个 VBScript,它将运行 批处理文件 而无需打开/显示任何窗口。 这是脚本:

    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run chr(34) & "PATH OF BATCH FILE WITH QUOTATION MARKS" & Chr(34), 0
    Set WshShell = Nothing
    

    把上面的代码复制粘贴到记事本上,另存为 任何名字.**vbs ** *"PATH OF BATCH FILE WITH QUOTATION MARKS" * 的示例可能是: "C:\ExampleFolder\MyBatchFile.bat"

    【讨论】:

      【解决方案4】:

      您想使用超时。 超时 10 将休眠 10 秒

      【讨论】:

      • 如何静默使用超时.. 不应该显示命令提示符
      • 您可能应该考虑使用实际的编程语言来执行此操作。有关 python、c++、perl 等示例,请参见 stackoverflow.com/questions/166044/sleeping-in-a-batch-file
      • @HPFE455 - 只需将输出重定向到 nul:>nul timeout 10
      猜你喜欢
      • 2011-12-18
      • 2011-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-29
      • 1970-01-01
      • 2013-05-28
      相关资源
      最近更新 更多