У меня есть каталог с несколькими файлами, давайте назовем эти 1.txt, 2.txt и т. Д. Каждый файл состоит из 3 столбцов: ID, лат и lon.К сожалению, некоторые из идентификаторов также могут быть пронумерованы (например, 1346, 248, 67912 и т. Д.).Я пытаюсь подсчитать количество экземпляров идентификатора станции среди всех файлов (1.txt, 2.txt и т. Д.) На основе мастер-файла (masterfile.txt).Пока у меня есть:
while IFS='' read line || [[ -n "$line" ]]
do
cat * | grep -w -c $line >> counting_filename.txt
done < masterfile.txt
, который прекрасно работает.Однако, если lat и / или long содержат конкретный идентификатор, это также будет учитываться.Например, если я ищу идентификатор станции 4575, если есть лат '47 .4575 'или lon' -77.4575 ', они также будут идти к счету.Таким образом, есть два решения, о которых я не могу придумать:
1) Просто grep в первом столбце экземпляров, или
2) grep, НЕ включая ведущих '. '
Например:
1.txt
4575 39.4575 -77.51
5010 38.3498 -78.4575
LAMS 38.4444 -78.3126
2.txt
3124 39.1010 -79.4575
4575 39.4575 -77.5010
PAOQ 39.2222 -78.0032
Если бы я выполнил указанную выше команду, я бы получил счет 6 для 4575, 2 для 5010, 1 для LAMS, 1 для 3124 и1 для PAOQ.
Что необходимо: 2 для 4575, 1 для 5010, 1 для LAMS, 1 для 3124 и 1 для PAOQ.
Есть мысли?