Veja como fazer isso com grep , usando a sintaxe de expressão regular Perl -P
e a opção somente correspondência correspondência-parte -o
:
grep -Poi "(.*pictures.*\.iso.*pictures.*|.*pictures.*\.iso|.*pictures.*)" | sort | uniq
que retorna:
OS Backups.iso, background/pictures.jpg Pictures vacation 2011.iso
- para cada linha,
grep
primeiro verifica se há arquivos.iso
com "imagens" em seu nome, que também contém um arquivo com "imagens" em seu nome, por exemplo:Pictures vacation 2011.iso, italy/pictures5.jpg
- Se encontrar, imprime a linha e segue em frente; se não, verifica se é um arquivo
.iso
com "imagens" em seu nome; - Em caso afirmativo, imprime apenas o nome ISO; se não, verifica se esta linha contém um arquivo com "imagens" em seu nome ...