Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

codercss

Procurar ficheiros com restrição no nome e sua extensão

Recommended Posts

Olá a todos,

Estou a construir um script para procurar no disco quais arquivos com extensão .sh existem com palavra no nome "mirror...qualquer coisa.."
Executei assim:

tree -f /path | grep ".sh" | grep "mirror"

Estas instruções estão a trazer tudo que tem extensão .sh e com nome mirror, mesmo não tendo extensão .sh.
Pensei que o pipe fizesse isto:
Executa o tree, pega no resultado do comando tree e faz com que a segunda instrução varre esse resultado, e por fim faz com que a terceira instrução varre o resultado da segunda instrução.

Duas questões:
1-O que está de errado nas instruções, uma vez que o resultado não é o mesmo do meu algoritmo?
2-Que dicas dão para executar este tipo de procuras?

Nota: Não quero comando prontos, procura instruções e dicas para estudar. Mas obrigado na mesma!
Pensei no programa "find", acham que seria melhor?

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

grep e egrep usam Expressões Regulares. Logo ".sh" e "\.sh" são coisas diferentes. "." significa qualquer caractere. Logo, seu grep vai retornar ".sh", "ash", "bsh", "1sh" e assim por diante. Use "\.sh" para forçar o .sh

Mais detalhes neste meu artigo sobre grep: http://rberaldo.com.br/grep-como-buscar-em-arquivos-linux/

Também é possível usar o comando find, que será mais eficiente que listar tudo e depois filtrar: http://rberaldo.com.br/find-como-encontrar-arquivos-linux/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.