You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Windows系统中使用Curl每分钟定时请求一次URL?

如何在Windows系统中使用Curl每分钟定时请求一次URL?

嗨,我来帮你解决这个问题~你之前的批处理脚本没循环起来是因为timeout命令根本没有loop参数,Windows批处理得用标签+跳转的方式实现循环,下面给你两种靠谱的方案,满足你“尽量隐蔽、不显示页面”的需求:

方案一:改进批处理脚本(快速实现)

你可以修改原来的bat文件,用Windows批处理的循环语法来实现重复请求:

@echo off
:loop
:: 静默请求URL,不输出任何内容
curl -s https://example.com > nul
:: 等待60秒,/nobreak防止用户按任意键跳过等待
timeout /t 60 /nobreak > nul
:: 跳回循环起始点,重复执行
goto loop

脚本参数说明:

  • @echo off:关闭命令行的命令回显,避免窗口里显示一堆执行命令
  • curl -s:启用curl的静默模式,不会输出请求的响应内容
  • > nul:把curl和timeout的输出都重定向到空设备,彻底看不到任何输出
  • timeout /t 60 /nobreak:固定等待60秒,且不允许用户中断等待

如果想要完全后台运行(看不到命令窗口),可以再写一个VBScript来调用这个bat:
创建一个run_background.vbs文件,内容如下:

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "C:\path\to\your\script.bat", 0, False

C:\path\to\your\script.bat替换成你实际的bat文件路径,双击这个VBS文件就会在后台悄悄运行脚本,完全没有窗口弹出。

方案二:使用Windows任务计划程序(长期稳定)

如果需要长期运行,任务计划程序是更可靠的选择——它可以自动重启失败的任务,还能设置开机自动启动:

  1. 打开任务计划程序(开始菜单搜索“任务计划程序”即可)
  2. 点击左侧的「创建基本任务」,给任务起个名字(比如“URL定时监控”)
  3. 触发器设置:选择「每天」,然后点击「下一步」,设置重复任务的间隔为1分钟,持续时间选「无限期」
  4. 操作设置:选择「启动程序」,在「程序或脚本」里填curl的完整路径(如果curl在系统PATH里,直接填curl.exe就行,否则比如C:\Windows\System32\curl.exe
  5. 添加参数:输入 -s https://example.com > nul,确保请求静默无输出
  6. 完成前勾选「当单击完成时,打开此任务的属性对话框」,在属性里设置:
    • 「不管用户是否登录都要运行」(适合无人值守的电脑)
    • 「如果任务失败,每隔1分钟重试」(提升稳定性)

两种方案各有优势:批处理脚本适合临时快速部署,任务计划程序更适合长期稳定运行的场景,你可以根据需求选择~

备注:内容来源于stack exchange,提问作者Chris Harrington

火山引擎 最新活动