【发布时间】:2020-06-28 21:36:06
【问题描述】:
我正在尝试同时执行 300 个 curl 并使用数组。我不知道如何将我的文件内容放入数组中。我写的代码如下。
array=();
for i in {1..300}; do
array+=( file.txt ) ;
done;
curl "${array[@]}";
file.text 包含以下代码
--next 'https://d16.server.com/easy/api/OmsOrder' -H 'Connection: keep-
alive' - H 'Pragma: no-cache' -H 'Cache-Control: no-cache' -H 'Accept:
application/json,
text/plain, */*' -H 'Sec-Fetch-Dest: empty' -H 'User-Agent: Mozilla/5.0
(Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/80.0.3987.132 Safari/537.36' -H 'Content-Type: application/json' -H
'Origin: https://d.server.com' -H 'Sec-Fetch-Site: same-site' -H
'Sec-Fetch-Mode: cors' -H 'Referer: https://d.server.com/' -H 'Accept-
Language: en-US,en;q=0.9,fa;q=0.8' --data-binary
'{"isin":"IRO3TPEZ0001","financeId":1,"quantity":50000,"price":5400}' --
compressed"
【问题讨论】:
-
“file.txt”中有什么内容?网址?是否要将文件中的前 300 行传递给 curl 并忽略其余部分?
-
@thatotherguy file.txt 包含一个 JSON 工作人员,它太长了。我想将它发布到服务器 300 次。当我将文件的内容带到这里时,我会收到此错误“-bash: /usr/bin/curl: Argument list too long”
-
您的示例中没有服务器,因此无法正常工作。在尝试将任何内容放入循环或数组中之前,您应该弄清楚一次发布到服务器的完整命令。
-
你的脚本会这样做:
curl file.txt file.txt file.txt ...,300 次file.txt。 -
@thatotherguy 我已将员工放入 file.txt。文件文本包括服务器和标题和数据。
标签: arrays linux bash curl terminal