find / | grep para encontrar arquivos contendo git mas exclui digital [duplicate]

0

Eu uso find / | grep git para encontrar repositórios. Às vezes, ele encontra muitos arquivos que contêm digital. Parece muito fácil usar find / | grep -vi digital | grep git , mas acredito que há uma chance de ignorar /home/auser/.../digital/.../gitrepo . Eu também gostaria de pular esses diretórios:

/home/john/C_DRIVE/*
/proc/*

Existe uma maneira de realizar uma pesquisa de forma que uma determinada correspondência seja removida e depois que a pesquisa prossiga?

    
por user1325696 23.05.2017 / 10:38

2 respostas

4

Como os repositórios git têm uma pasta .git , procure por essas pastas:

find / -type d -name .git
    
por muru 23.05.2017 / 10:41
0

O que você deseja são dois comutadores, -not e -path . O operador -not permitirá que você ignore um caminho que corresponda aos padrões fornecidos em -path da seguinte forma:

find / -type d -name ".git" -not -path "/home/auser/*/digital/*" -prune
    
por Sergiy Kolodyazhnyy 23.05.2017 / 10:43