linux - universidades - Curl "escribir" valor de encabezado específico
tesis de bibliotecas publicas pdf (2)
Las variables especificadas para "-w" no están conectadas directamente al encabezado http. Así que parece que tienes que "analizarlos" por tu cuenta:
curl -I "server/some/resource" | grep -Fi etag
Actualmente estoy escribiendo un script de bash y estoy usando curl. Lo que quiero hacer es obtener un encabezado específico de una respuesta.
Básicamente quiero que este comando funcione:
curl -I -w "%{etag}" "server/some/resource"
Desafortunadamente, parece que la opción -w, --write-out solo tiene un conjunto de variables que admite y no puede imprimir ningún encabezado que sea parte de la respuesta. ¿Debo analizar la salida del rizo para obtener el valor ETag o hay alguna manera de hacer que el rizo imprima el valor de un encabezado específico?
Obviamente algo como
curl -sSI "server/some/resource" | grep ''ETag:'' | sed -r ''s/.*"(.*)".*//1/''
hace el truco, pero sería mejor que Curl filtre el encabezado.
Puede imprimir un encabezado específico con un solo comando sed o awk, pero los encabezados HTTP usan finales de línea CRLF.
curl -sI .com | tr -d ''/r'' | sed -En ''s/^Content-Type: (.*)//1/p''
Con awk puede agregar FS=": "
si los valores contienen espacios:
awk ''BEGIN {FS=": "}/^Content-Type/{print $2}''