Bash найти чернослив не работает, как предполагалось - PullRequest
0 голосов
/ 10 декабря 2018

У меня есть несколько репозиториев git, и я хочу подсчитать, сколько .txts, каталогов и других файлов они содержат. Проблема в том, что внутри каждого репозитория есть каталог .git, содержащий больше файлов и конфигураций. Я не хочу считать нипапка, которую я ищу, или каталог .git или содержащие его файлы. Я использую следующую команду:

all="$(find $repo -path "$repo"/.git -prune -o type f)"
dirs="$(find $repo -path "$repo"/.git -prune -o type d)"
txts="$(find $repo -path "$repo"/.git -prune -o type f -iname "*.txt")"

$repo - это путь к моему хранилищу, и он выглядит примерно так: assignments/repo1 assignments/repo2и т. д. Все эти итерации находят внутри .git и перечисляют там все. Я делаю синтаксическую ошибку или что-то в этом роде?

1 Ответ

0 голосов
/ 10 декабря 2018

Спасибо за ваши ответы. Я не смог заставить -path работать, поэтому я переключил его на -name. Я также использовал find в "$repo"/*, и я думаю, что все решено. Я не пробовал, но я верю, что если яиспользовал -path с "$repo"/*, это бы сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...