Используя 'grep' и другие утилиты

Я знаю, что это - на вид специфический вопрос, но я хочу иметь лучшее понимание использования утилит Linux, таким образом, я собираюсь попросить что-то, что кажется скорее сложным мне для понимания механизмов на работе лучше.

Рассмотрение всех заголовочных файлов в нашей системе, как я могу отобразить в терминале отсортированный список тех файлов на основе количества определенных макросов в них?

2
задан 25 November 2015 в 18:56

1 ответ

Это должно добиться цели:

for file in $(find /usr/include/ -name '*.h'); do
  echo "$file,$(grep -c '#define' $file)"; done \
  | sort -n -k2 -t, -r
  • Находят список всеми файлами, соответствующими/usr/include / *.h шаблон
  • Печать имя файла, запятая и количество строк, соответствующих '#define' шаблон
  • Вид численно, с помощью запятой в качестве разделителя вторым полем (обратный порядок).

можно добавить | head -10 для получения лучших 10 файлов.

5
ответ дан 2 December 2019 в 02:00

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

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