Eu suponho que você quer offset ir de 150 a 155, e também encurtar o comando para que eu possa explicar melhor.
Você pode incrementar offset com um for loop e usar a variável i como offset :
for i in {150..155}; do
curl --header "kk: vv" "http://example.com/path&offset=$i" >outfile$i 2>&1
done
Notas:
- Eu coloco
$i em >outfile$i , supondo que você queira manter todas as respostas para todos os offests . Sem $i no nome do arquivo, todas as chamadas curl gravam no mesmo arquivo e sobrescrevem, mantendo apenas o último resultado curl .
- Em vez de
>outfile$i 2>&1 , você pode usar &>outfile$i , mas pode não funcionar em alguns shells (mais antigos).
- Você pode conseguir a mesma coisa com um
for como for ((i=150; i<=155; ++i)); do ou for i in $(seq 150 155); do . Alguma forma pode ser mais legível / familiar para você, mas não faz diferença neste exemplo.
-
É mais simples usar a expansão das chaves para casos como este e criar várias URLs para o curl :
curl --header "kk: vv" "http://example.com/path&offset="{150..155} >>outfile 2>&1
Mas não é possível gravar cada resposta em um arquivo separado. Em vez disso, você pode anexar todas as respostas a um arquivo usando >> .