как посчитать конкретное слово в тексте f ie используя bash файл - PullRequest
0 голосов
/ 29 марта 2020

У меня есть текстовый файл, который содержит следующие тексты:

ITEM
preset_date 23/10/15
preset_time 22:00:00:00
title Buletin Awani Headlines
clip TAPE_REPLACEMENT
in_src 0
out_src 1500
mode 2
no_vision_trans 1
no_audio_trans 1
type 1
logo_0 1
user_data 08_P_152784839
logo_data_0 0
channel_id 2
end
ITEM
preset_date 23/10/15
preset_time 22:01:00:00
title Episode Number 7
clip HJNAW01HM01AA
in_src 902250
out_src 915700
mode 1
no_vision_trans 1
no_audio_trans 1
type 1
logo_0 1
user_data 08_P_152784840
logo_data_0 0
aspect_ratio 2
channel_id 2
use_subtitle 1
subtitle HJNAW01HM01
end

Я хочу подсчитать количество вхождений слова logo в файле. Как я хочу добиться этого с помощью файла Bash? Ценю вашу помощь ..

Ответы [ 2 ]

1 голос
/ 30 марта 2020

grep -c 'logo' < input file name

0 голосов
/ 29 марта 2020

Pure bash решение.

#!/bin/bash

count=0
match="logo" # note: this is a regular expression

while read -a line ; do
    for word in "${line[@]}" ; do
        [[ $word =~ $match ]] && let 'count=count+1'
    done
done

echo $count

Инструкции по запуску

Сохраните скрипт в count_logo.sh. Сделайте скрипт исполняемым:

chmod +x count_logo.sh

Запустите скрипт с вводом из вашего текстового файла (скажем, file.txt), используя:

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