Puoi stampare un'intestazione specifica con un singolo comando sed o awk, ma le intestazioni HTTP utilizzano terminazioni di riga CRLF.
curl -sI stackoverflow.com | tr -d '\r' | sed -En 's/^Content-Type: (.*)/\1/p'
Con awk puoi aggiungere FS=": "
se i valori contengono spazi:
awk 'BEGIN {FS=": "}/^Content-Type/{print $2}'
Le variabili specificate per "-w" non sono direttamente collegate all'intestazione http. Quindi sembra che tu debba "analizzare" da solo:
curl -I "server/some/resource" | grep -Fi etag