Aqui está uma maneira de fazer isso com wget e cut :
wget -nv https://upload.wikimedia.org/wikipedia/commons/5/54/Golden_Gate_Bridge_0002.jpg 2>&1 |cut -d\" -f2
Explicação, wget -nv ... imprime algo assim:
2016-11-15 14:58:44 URL:https://upload.wikimedia.org/wikipedia/commons/5/54/Golden_Gate_Bridge_0002.jpg [1072554/1072554] -> "Golden_Gate_Bridge_0002.jpg.22" [1]
O sinalizador -nv no wget apenas o torna "não-detalhado" (consulte: man wget )
Como wget grava sua saída para STDERR , temos que redirecioná-lo para STDOUT antes que possamos extrair o texto; para fazer isso, adicionamos 2>& no final do wget . Então, para sair apenas o nome do arquivo no final, usei cut . O -d\" é para especificar que estamos usando " como um delimitador. O -f2 especifica que queremos a segunda "coluna", ou seja, os dados entre o primeiro e o segundo delimitadores " .
Primeira coluna: 2016-11-15 14:58:48 URL:https://upload.wikimedia.org/wikipedia/commons/5/54/Golden_Gate_Bridge_0002.jpg [1072554/1072554] -> " Golden_Gate_Bridge_0002.jpg.23 '"[1]