如何在没有 header 的情况下在 shell 脚本 curl 命令中传递授权密钥

How to pass authorization key in shell script curl command without header

在 shell 脚本中,我需要从 .pem 文件中提取私钥。当我将 AUTORIZATION 变量设置为路径时,变量只是文件路径字符串,而不是实际文件路径。

如果我将 AUTHORIZATION 变量更改为 cat <FILE_PATH>,它会导入 header 和页脚,即 -----BEGIN RSA PRIVATE KEY... END RSA PRIVATE KEY-----

如何提取没有 header 和页脚的 RSA 密钥?

CLUSTER=standalone
TENANT=climate
NAMESPACE=integration_test
AUTHORIZATION=$REPO_ROOT/pulsar/tls/broker/broker.key.pem

echo $AUTHORIZATION

# Create tenant
curl -L -X PUT "http://localhost:$HOST_PULSAR_PORT/admin/v2/tenants/$TENANT" \
    --header "Authorization: Bearer $AUTHORIZATION" \
    --header 'Content-Type: application/json' \
    --data-raw "{\"allowedClusters\": [\"$CLUSTER\"]}"

您可以使用 cat 从文件位置获取输出,然后将其存储到变量

AUTHORIZATION=$(cat $REPO_ROOT/pulsar/tls/broker/broker.key.pem)