[英]How to escape double quotes and exclamation mark in password?
我有以下代碼:
curl -s --insecure -H "Content-Type: application/json" -X POST -d "{\"username\":\"$1\",\"password\":\"$2\"}" http://apiurl
在上面的curl
命令中,我想轉義密碼中的"
和!
"
。現在密碼僅為$2
我修改了curl命令,如下所示,但它似乎不起作用
curl -s --insecure -H "Content-Type: application/json" -X POST -d "{\"username\":\"$1\",\"password\":\"$2\"}" http://apiurl
不要嘗試手動生成JSON; 使用類似jq
的程序,該程序知道如何正確地進行轉義,以便為您生成它。
json=$(jq -n --arg u "$1" --arg p "$2" '{username: $u, password: $p}')
curl -s --insecure -H "Content-Type: application/json" -X POST -d "$json" http://apiurl
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.