Curl 命令重复 URL 请求

问题描述 投票:0回答:6

重复访问 URL x 次的 Linux 命令的语法是什么?我不需要对数据做任何事情,我只需要在浏览器中重复点击刷新 20 次。

linux url curl
6个回答
165
投票

您可以使用 URL 序列替换和虚拟查询字符串(如果您想使用 CURL 并节省一些击键):

curl http://www.myurl.com/?[1-20]

如果 URL 中有其他查询字符串,请将序列分配给一次性变量:

curl http://www.myurl.com/?myVar=111&fakeVar=[1-20]

查看手册页上的 URL 部分:https://curl.haxx.se/docs/manpage.html


106
投票
for i in `seq 1 20`; do curl http://url; done

或者如果您想获取计时信息,请使用

ab
:

ab -n 20 http://url/

91
投票

您可能对 Apache Bench 工具感兴趣,该工具基本上用于进行简单的负载测试。

示例:

ab -n 500 -c 20 http://www.example.com/

n = 请求总数,c = 并发请求数


8
投票

您可以使用任何 bash 循环结构,例如

FOR
,并且与 Linux 和 Mac 兼容。

https://tiswww.case.edu/php/chet/bash/bashref.html#Looping-Constructs

在您的具体情况下,您可以定义

N
迭代,其中
N
是定义您想要执行多少
curl
的数字。

for n in {1..N}; do curl <arguments>; done

例如:

for n in {1..20}; do curl -d @notification.json -H 'Content-Type: application/json' localhost:3000/dispatcher/notify; done

5
投票

如果你想在下次执行cron之前添加一个间隔,你可以添加一个睡眠

对于

{1..100}
中的 i;做 echo $i && curl "http://URL" >> /tmp/output.log && sleep 120;完成


2
投票

如果您想在每个请求之前添加一点延迟,您可以在 Linux 中使用

watch
命令:

watch curl https://yourdomain.com/page

这将每隔一秒调用您的网址。通过添加“-n”参数和包含秒数的延迟来更改间隔。例如:

watch -n0.5 curl https://yourdomain.com/page

现在将每半秒调用一次 url。

CTRL+C 退出

watch

© www.soinside.com 2019 - 2024. All rights reserved.