find `pwd` -name '.*' -prune -o \( -name *.h -o -name *.cpp \) -print | cscope -bi-
Команда find
используется для поиска файлов и директорий в указанном каталоге и его подкаталогах.
В данном примере команда find
применяется с несколькими опциями и аргументами.
— pwd
возвращает текущий путь.
— Опция -name '.*' -prune
используется для игнорирования скрытых файлов и директорий, начинающихся с точки.
— \( -name *.h -o -name *.cpp \)
задает условие для поиска файлов с расширениями .h
или .cpp
.
— Опция -print
выводит список найденных файлов в stdout.
Для создания файла cscope.out
из найденных файлов, используется конвейер |
, который передает вывод команды find
на вход команды cscope
.
Команда cscope -bi-
генерирует базу данных cscope без интерактивного режима (-b
) и без индексации исходных файлов (-i-
).
Альтернативный способ создания cscope.out
из всех .h
и .cpp
файлов без игнорирования скрытых файлов может быть использование следующей команды:
find . \( -name *.h -o -name *.cpp \) -print | cscope -bi-