Bash цикл через masterfile, чтобы определить, сколько вхождений в конкретной папке - PullRequest
0 голосов
/ 28 сентября 2018

У меня есть мастер-файл (master.txt), который содержит несколько строк по 4-7 символов в каждой строке (~ 38213 строк).У меня также есть папка с данными, которая содержит несколько файлов (file1, file2 и т. Д.), Которая также содержит несколько строк из 4-7 символов.

Вопрос в том, что я знаю, что если я перейду в рабочий каталог и наберу

cat * | grep -c 'value'

, я получу количество вхождений 'value' во всех файлах вТекущий каталог.Что если я захочу пройтись по «значению», которое читается из мастер-файла?Я знаю, что с функцией 'while read' можно что-то сделать, но объединение двух не работает.Например:

masterfile="path/to/masterfile/master.txt"
foldername="path/to/folder"

cd foldername

while IFS='' read line || [[ -n "$line" ]]
do
echo cat * | grep -c $line >> /path/to/output/file.txt
done < $masterfile

Но я получаю 0.Есть мысли?

...