Как получить каталог для существования ключевых слов? - PullRequest
1 голос
/ 25 октября 2010

Например, у меня есть папка / path / to /, и я хочу посмотреть, содержит ли она «keyword1», «keyword2» или «keyword3», и результат будет (когда найдены 2):

/path/to/folder: keyword1 keyword3

Я пробовал с показанными здесь параметрами , но он не работает для папок.

Ответы [ 3 ]

1 голос
/ 25 октября 2010
echo -n '/path/to/folder:'; for kw in {keyword1,keyword2,keyword3}; do grep -qr $kw /path/to/folder/; if [ $? == 0 ]; then echo -n " "$kw; fi; done
1 голос
/ 25 октября 2010

Если вы говорите о ключевых словах в именах файлов

shopt -s nullglob
for file in *keyword1* *keyword2* *keyword3*
do
  echo "$file"
done

, если вы говорите о поиске этих ключевых слов в файлах, которые находятся в вашей папке, вы можете использовать такие инструменты, как grep

grep -l -E "keyword1|keyword2|keyword3" *

, если вам нужно показать, какие ключевые слова найдены

grep  -Eo "keyword1|keyword3|keyword2" *
0 голосов
/ 25 октября 2010
grep -E "keyword1|keyword3|keyword2" *

вернет что-то вроде этого:

file.one: этот текст содержит keyword1 .file.two: ключевое слово2 можно найти в этом файле.file.six: Это перечисление ключевых слов: keyword1 , keyword2 , keyword3 .

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