1

我想知道是否可以提供而不是文件路径文件内容本身。例如curl需要指定证书的文件路径。当我在变量中有证书时该怎么办?
我不能将它放入标准输入,因为我正在生成要发送到那里的 xml。
为什么我将证书放入变量中?因为最后我只想拥有一个带有脚本的文件,我可以轻松地将其分发给我的同事。
我想到的唯一解决方案是将变量保存到文件,然后提供文件路径curl

read -d '' CERT << "CERTEND"
-----BEGIN CERTIFICATE-----
### something very secret here ###
-----END CERTIFICATE-----
CERTEND

curl -# -k --cert ??? -d @xml.xml -H "Content-Type: application/soap+xml" -H 'SOAPAction: ""' https://1.1.1.1/EndpointPort`
4

1 回答 1

1

您可以使用进程替换:

curl --cert <(echo "$CERT") ...

这将为您创建一个管道。括号中的命令输出到这个管道(echo $CERT在我们的例子中),并返回管道的文件名。

于 2013-04-02T10:08:55.820 回答