我如何使用gnu parallel使此过程更快?
#!/bin/bash
for (( c=1; c<=100; c++ ))
do
curl -sS 'https://example.com' \
--data 'value='$c'' /dev/null
echo $c
done
您可以使用并行或xargs
seq 100 | parallel curl -sS 'https://example.com' --data value='{}' /dev/null
seq 100 | xargs -I{} curl -sS 'https://example.com' --data value='{}' /dev/null
按照脚本的立场,输出将发送到stdout。使用xargs,这将导致潜在混合来自不同调用的输出。如果需要,请考虑将输出重定向到文件以进行其他处理。
您可以根据需要添加最大并行选项(-Pn等)>
我不确定为什么需要'/ dev / null'。考虑重新排序:
curl -sS --data value ='{}'https://example.com'