Bash and double quotes escaping

bashscripting

If I run some thing like this in shell:

curl -I http://example.com -H "If-None-Match: \"da8e7e-557a9-4cbc6f2e68780\""

I get correct result, but when I'm trying ro tun it in my bash script:

http_code=$(curl -I $SELL_URI -H "If-None-Match: "\$etag\"" | grep ...)

My curl -I $SELL_URI -H "If-None-Match: "\"$etag\" looks like this:

$"-None-Match: "da8e7e-557a9-4cbc6f2e68780

Best Answer

You could put the header in single quotes like this:

curl -I http://example.com -H 'If-None-Match: "da8e7e-557a9-4cbc6f2e68780"'