Перечислите все файлы, которые не содержат конкретной строки - PullRequest
3 голосов
/ 20 сентября 2011

Я хотел бы знать, какие файлы не включают в себя определенный заголовочный файл в C.

Например:

file1.c

#include "stdio.h"
#include "my.h"

...

file2.c

#include "stdio.h"

....

Я хотел бы найти похожие файлы (например, file2.c), которые не содержат #include "my.h".

Ответы [ 2 ]

3 голосов
/ 20 сентября 2011

В системах Unix:

grep -L '#include.*my\.h' *.c
1 голос
/ 20 сентября 2011
shopt -s nullglob
for file in *.c
do
   if grep -q "my.h" "$file" ;then
     continue
   else
      echo "found file that don't have my.h"
   fi
done

Или вы можете использовать:

grep -L "my.h" *.c

если вам нечего обрабатывать, кроме вывода имен файлов. :)

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