使用GNU Parallel进行分页

时间:2014-01-23 18:10:51

标签: api rest unix quickblox gnu-parallel

我喜欢GNU Parallel并尝试使用它进行分页,但需要帮助才能使其成功运行。基本上,我遵循Quickblox API指南中的用例来获取数据:

http://quickblox.com/developers/Custom_Objects#Get_related_records

每个页面可以检索的最大记录数为100,而且一次只能检索一个页面。这些是通过-d参数指定的。我想使用GNU Parallel来获取页面1..79。

我找到了一个解释如何使用GNU Parallel的线程,当你的参数具有许多不同的值但是无法成功地适应我的情况时。

GNU Parallel - parallelize serial command line programs without changing them

非常感谢您的帮助!

curl -X GET -H "QB-Token: 7de49c25f44e557aeed1b635" -d "page=3" -d "per_page=100" https://api.quickblox.com/users.xml > qblox_users_page3_100perpage

1 个答案:

答案 0 :(得分:2)

如果您想要输出不同的文件:

parallel 'curl -X GET -H "QB-Token: 7de49c25f44e557aeed1b635" -d "page={}" -d "per_page=100" https://api.quickblox.com/users.xml > qblox_users_page{}_100perpage' ::: {1..79}

如果你想把它放在一个大文件中:

parallel -k 'curl -X GET -H "QB-Token: 7de49c25f44e557aeed1b635" -d "page={}" -d "per_page=100" https://api.quickblox.com/users.xml' ::: {1..79} > qblox_users