Для булевых или трехпозиционных да/нет/модульных настроек, missing и n
эквивалентны.
Булевы настройки соответствуют макросу препроцессора C, который либо определен, либо нет. Исходные файлы проверяют, определен ли макрос с помощью #ifdef
. Если параметр n
, макрос не определен, что эквивалентно состоянию по умолчанию.
Настройки да/нет/модуль tristate раскрываются в make-файлах. Опции, установленные в y
, вызывают компиляцию исходного файла и компоновку полученного объектного файла в основной образ ядра. Опции, установленные в m
, вызывают компиляцию исходного файла и компоновку полученного объектного файла как отдельного модуля. Опции, установленные в n
, не вызывают сборки.
Некоторые параметры конфигурации не оказывают прямого влияния на файл, а только заставляют интерфейсы конфигурации запрашивать определенную категорию параметров.
Если у вас есть файл .config
в дереве исходных текстов ядра, вы можете выполнить make oldconfig
для регенерации файла с удалением неизвестных опций и добавлением опций, отсутствующих в файле, с их настройками по умолчанию. Некоторые опции пропускаются из результирующего файла, если их категория пропущена при установке опции category prompt в n
.
Это найдет все каталоги с именем "templates" под текущим каталогом и перечислит все файлы в них
find -name 'templates' -type d -execdir ls {} \;
Все файлы в папках templates
, рекурсивно:
find. -path '*/templates/*'
Если вам не нужны файлы в подкаталогах templates
папок (, за исключением templates/foo/templates/bar
для курса ), вы можете использовать расширение -regex
некоторых find
реализаций:
find. -regex '.*/templates/[^/]*'
Если вам нужны только обычные файлы, добавьте -type f
. Для любого типа файлов, кроме каталога, ! -type d
.
Если вас интересуют только имена файлов, а не путь, ведущий к ним, в GNU find
добавьте-printf '%f\n'
(и, возможно, канал к sort -u
, предполагая, что имена файлов не содержат символов новой строки, чтобы получить уникальные имена ).