Счетчик абзацевLinux

Ответить
Anonymous
 Счетчик абзацев

Сообщение Anonymous »


У меня есть текстовый файл, и я написал скрипт для Linux, где он подсчитывает все символы (с пробелами), количество строк и слов. Мне также нужно написать что-то, что подсчитывает количество абзацев, но я не знаю, как это сделать. Если бы кто-нибудь мог мне помочь, я был бы очень признателен.

Это мой сценарий:

#!/bin/bash is_text_file() { if [[ $(grep -c -P '[\x01-\x7F]' "$1") -gt 0 ]]; затем вернуть 0 еще вернуть 1 фи } если [ $# -lt 2 ]; затем echo "Использование: $0 -file FILE_PATH [-вхождений НОМЕР]" выход 1 фи в то время как [ "$#" -gt 0 ]; делать случай "$1" в -файл) файл="$2" смена 2 ;; -происшествия) вхождения="$2" смена 2 ;; *) echo "Неверный флаг: $1" выход 1 ;; Эсак сделанный если ! is_text_file "$файл"; затем echo "Указанный файл не является текстовым файлом." выход 1 фи word_count=$(cat "$file" | tr -s '[:space:]' '\n' | wc -w) line_count=$(cat "$file" | grep -c '^') character_count=$(cat "$file" | wc -c) параграф_count=$(awk 'BEGIN { RS = "" } { print NF }' "$file") echo "Количество слов: $word_count" echo "Количество строк: $line_count" echo "Количество символов: $character_count" echo "Количество абзацев: $paragraph_count" if [ -n "$вхождения"]; затем echo "Самые частые слова:" кот "$file" | tr -s '[:space:]' '\n' | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | сортировать | уникальный -c | сортировать -номер | head -n "$вхождения" фи Это мой текстовый файл:
«Это образец текстового файла.
Он содержит несколько слов и абзацев.

Не стесняйтесь добавлять больше контента для тестирования».

(без кавычек)

Должно быть написано, что абзацев 2, а там написано 1. Спасибо.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»