如何在 Windows 7 上启动时等待网络连接然后运行任务

Twi*_*ech 4 networking windows-7 windows-task-scheduler

是否可以让任务在运行前等待网络准备就绪?我看到的唯一与网络相关的选项是“仅在以下网络连接可用时启动”,如果网络未准备好,它将跳过任务而不是延迟任务。

如果没有办法让任务调度程序等待,是否有一个命令会阻塞直到网络准备好?

Ƭᴇc*_*007 5

使用脚本(例如 Powershell)作为任务目标,并让脚本在触发所需的命令之前进行测试/等待。

do {
  $ping = test-connection -comp <servername> -count 1 -Quiet
} until ($ping)
// Launch task command(s) here.
Run Code Online (Sandbox Code Playgroud)

替换为您要等待准备就绪的主机的主机名或 IP 地址。

test-connection将 ping 目标设备,如果响应,$ping 将为“True”,否则为“False”。

do...until循环将重复执行 ping 操作,直到获得响应。目前,如果它永远不会回答,则这是无止境的,因此您可能需要考虑更改循环类型和/或添加某种最大重试限制。