Você diz que precisa fazer isso "no Bash", mas parece que significa "em um script" e não "usando a sintaxe pura do Bash" (há uma diferença). Eu suponho que você quer o significado "em um script".
Se você salvou todos os links em linhas separadas em um documento, poderá selecionar todos os links no domínio http://www.example.com/
, por exemplo,
grep "^http://www\.example\.com/" filewithlinks.txt
ou todos os links terminados em .ogg
com
grep "\.ogg$" filewithlinks.txt
(Os períodos precedentes da barra invertida são para escapar do sinal " .
" que significa "qualquer caractere". " \.
" significa um período literal. Sem escapar, você encontrará links que terminam com, por exemplo, "logg" também.)
Você também pode fazer a correspondência de linha diretamente no comando awk
, mas isso seria mais complicado de alterar de tempos em tempos, acredito. A maneira mais fácil é salvar a lista completa de links em um arquivo como você faz e, em seguida, basta pesquisar o arquivo com, por exemplo, grep
como acima. Então você também não terá que baixar e analisar o documento novamente se quiser alterar o padrão de correspondência.