cURL获取文件中的请求和参数

cURL获取文件中的请求和参数,curl,parameters,get,Curl,Parameters,Get,有没有办法在文件中包含参数,而不是像这样做 curl -X GET -G 'http://rest_url' -d 'param1=value1' -d 'param2=value2' -d 'paramX=valueX' 拥有 curl -X GET -G 'http://rest_url' -d @file.txt 我已转移到该文件作为 'param1=value1' 'param2=value2' 'paramX=valueX' 但这不起作用。是的。您可以在文件中执行这些操作,但

有没有办法在文件中包含参数,而不是像这样做

curl -X GET -G 'http://rest_url' -d 'param1=value1' -d 'param2=value2' -d 'paramX=valueX'
拥有

curl -X GET -G 'http://rest_url' -d @file.txt
我已转移到该文件作为

'param1=value1' 
'param2=value2' 
'paramX=valueX'

但这不起作用。

是的。您可以在文件中执行这些操作,但它们将显示为单个-d选项,因此curl不会在参数之间插入符号,因此您必须编写文件以包含如下数据:

param1=value1&param2=value2

curl -G 'http://rest_url' -d @file.txt
script.sh < file.txt
如果您更愿意像问题中那样用换行符分隔参数,我建议使用一个小的shell脚本来解决这个问题:

#!/bin/sh
while read param; do
  args="$args -d $param";
done
curl -G $args http://example.com
然后像这样使用它:

param1=value1&param2=value2

curl -G 'http://rest_url' -d @file.txt
script.sh < file.txt
script.sh
是。您可以在文件中执行这些操作,但它们将显示为单个-d选项,因此curl不会在参数之间插入符号,因此您必须编写文件以包含如下数据:

param1=value1&param2=value2

curl -G 'http://rest_url' -d @file.txt
script.sh < file.txt
如果您更愿意像问题中那样用换行符分隔参数,我建议使用一个小的shell脚本来解决这个问题:

#!/bin/sh
while read param; do
  args="$args -d $param";
done
curl -G $args http://example.com
然后像这样使用它:

param1=value1&param2=value2

curl -G 'http://rest_url' -d @file.txt
script.sh < file.txt
script.sh