bash - 如何在文件中使用 curl 命令数据?

标签 bash curl

我有一个包含 fqdn 和主机名变量的文本文件。文件看起来像这样

first_fqnd    first_hostname
second_fqdn     second_hostname
.....      .....

我必须在 bash 脚本中使用 curl 更新一些数据,但我必须从这个文本文件中获取 fqdn 和主机名,并为每一对 fqdn 和主机名制作一个 curl。

我的 curl 应该是这样的:

curl -H "Content-Type:application/json" -XPUT "https://pup.pnet.pl/api/hosts/**fqdn from file**" -d '{"host":{"name": "**hostname from file**"}}' --cacert bundle.pem --cert xxx-pem.cer --key xxx-privkey.pem

如何将这些变量从文件传递到 curl?我想过使用awk,但我不知道如何在curl命令中使用它

最佳答案

使用 while 结构读取文件行并将空格分隔的参数作为两个相关变量,fqdnhostn:

while read fqdn hostn; do
    curl -H .... -XPUT "https://pup.pnet.pl/api/hosts/${fqdn}" \
      -d '{"host":{"name": "'"${hostn}"'"}}' --cacert ....; done <file.txt

关于bash - 如何在文件中使用 curl 命令数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38452857/

相关文章:

linux - 如何删除基于列值的重复行?

linux - BASH Wikitables 获取硬件信息

php - 使用 php/curl 将图像上传到 tumblr 时出现问题

PHP curl_exec() 无法联机工作,但在本地主机上工作正常,因为 CURLOPT_POSTFIELDS 未将数据附加到 http 发布请求

php - 使用 Paypal 用户名、密码和签名访问 REST API

php - 我无法在实时服务器上使用curl方法运行api

WordPress Rest API 表现得好像没有发送数据

bash - ts流制作中的ffmpeg两遍

python - 从子进程更改父 shell 的环境

bash:遍历 float 列表