find / | grep, чтобы найти файлы, содержащие git, но исключить цифровые [дубликат]

На этот вопрос уже есть ответ здесь:

Я использую найти / | grep git , чтобы найти репозитории. Иногда он находит множество файлов, содержащих цифровой формат. Кажется, довольно просто использовать find / | grep -vi digital | grep git , но я считаю, что есть шанс проигнорировать / home / auser /.../ digital /.../ gitrepo . Я также хотел бы пропустить эти каталоги:

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

Есть ли способ выполнить поиск таким образом, чтобы определенное совпадение было удалено и после этого поиск продолжился?

0
задан 23 May 2017 в 02:33

2 ответа

Так как репозитории мерзавца имеют .git папка в них, ищут те папки:

find / -type d -name .git
4
ответ дан 3 November 2019 в 05:01

То, что Вы хотите, является двумя переключателями, -not и -path. -not оператор позволит Вам игнорировать путь, который соответствует шаблонам, обеспеченным в -path как так:

find / -type d -name ".git" -not -path "/home/auser/*/digital/*" -prune
0
ответ дан 3 November 2019 в 05:01

Другие вопросы по тегам:

Похожие вопросы: