Se eu entendi sua pergunta corretamente, seu grep
produzirá um monte de strings como este:
href="http://reddit.com/r/bacon/foo"
E você quer transformar cada um deles em algo como:
http://i.imgur.com/foo.jpg
http://i.imgur.com/foo.png
http://i.imgur.com/foo.gif
Não é particularmente elegante, mas você pode fazer:
sed "s .*/r/bacon/\(.*\)\".* http://i.imgur.com/.jpg\nhttp://i.imgur.com/.png\nhttp://i.imgur.com/.gif "
Exemplo:
timp@helez:~/tmp$ cat bacon.lines
href="http://reddit.com/r/bacon/foo"
href="http://reddit.com/r/bacon/bar"
timp@helez:~/tmp$ cat bacon.lines | sed "s .*/r/bacon/\(.*\)\".* http://i.imgur.com/.jpg\nhttp://i.imgur.com/.png\nhttp://i.imgur.com/.gif "
http://i.imgur.com/foo.jpg
http://i.imgur.com/foo.png
http://i.imgur.com/foo.gif
http://i.imgur.com/bar.jpg
http://i.imgur.com/bar.png
http://i.imgur.com/bar.gif