O que você deseja é uma solicitação HEAD, mas wget
não oferece suporte a ela; curl
faz.
Sua distribuição provavelmente tem curl
em repositórios.
curl -s -I $URL -L | awk '/Location: (.*)/ {print $2}' | tail -n 1
$ URL=http://unix.stackexchange.com/questions/89282/
$ curl -s -I $URL | awk '/Location: (.*)/ {print $2}' | tail -n 1
/questions/89282/how-to-figure-out-where-a-link-gets-redirected
$ _
Aqui:
-
-s
impede quecurl
mostre uma barra de progresso; -
-I
tornacurl
um pedido HEAD; -
-L
fazcurl
seguir redirecionamentos (obrigado @brianstone), você pode querer ou não incluir isso, dependendo de quais cabeçalhos de redirecionamento você deseja rastrear; - o script awk imprime a expressão correspondente nos parênteses, apenas a parte local do URI.