cat file | grep -v "\.png" >new_file_without_pngs
Atualizado para comentar:
egrep -iv "\.(png|jpg|jpeg|gif|etc)" file >new_file
Eu tenho uma lista de urls dos quais alguns apontam para imagens:
http://s.thebrighttag.com/iframe?c=A5lqOqP
http://s.wordpress.com/imgpress?resize=136,136&url=http%3A%2F%2Fdata.whicdn.com%2Fimages%2F2833524%2F4thofJuly-collage_large.jpg%3F1278084193
Como removo essas linhas do arquivo?
Para a variante de edição no local, você pode usar sed
da seguinte forma:
$ sed -i -r 's/.*\.(png|jpg).*//I' file
Ele removerá as linhas contendo .png
ou .jpg
diretamente no arquivo. A opção -i
passada para sed
significa 'edição no local'. Faça um backup do seu arquivo antes de executar este comando, ou tente primeiro sem a opção -i
se não tiver certeza.
O sinalizador I
é para realizar uma correspondência sem distinção entre maiúsculas e minúsculas.
Você pode usar o Vim no modo Ex:
ex -sc 'g/\.png/d' -cx file
g
pesquisa global
d
delete
x
salvar e fechar
Se você tiver sponge
, você pode trocar o conteúdo de um arquivo como este:
grep -E -iv "\.(png|jpg|jpeg|gif)" file | sponge file