Intereting Posts
Сохраняйте только первую строку из каждой последовательности последовательных строк, соответствующих шаблону Vino on Gnome DE Fedora 18 прослушивание 0.0.0.0 Как проверить, установлен ли vim? привязать обратную косую черту к нестандартной клавише клавиатуры Какие правила определяют отношения между родителями и дочерними процессами, запущенными оболочкой через трубу? Как приостановить процесс в течение определенного периода времени? Apache 2.4 не перезагрузится, никаких проблем с моей конфигурацией? (CentOS) по умолчанию FTP (SFTP) Файл журнала? Как разбить систему Linux? Невозможно монтировать разделы! Настройка интервала демона Monit … глобальная или уровень обслуживания? Подключите мой ноутбук через рабочий стол к Интернету Вывод команды «смотреть» в виде списка нереста нескольких фоновых процессов awk с параметром number для столбца, который вы хотите распечатать

Добавить результат подсчета слов в конец файла

Я хочу подсчитать количество строк в example.txt и добавить результат в конец этого файла. Как я могу это сделать?

Я пытался:

 wc -l > example.txt 

 wc -l example.txt >> example.txt 

Как вы знаете, wc -l по умолчанию включает в себя номер результата и имя файла. Если по какой-то причине лучше иметь буквально только номер результата, попробуйте следующее:

 wc -l example.txt | cut -d' ' -f1 >> example.txt 

Поэтому, если example.txt началось только с 3 строк, например:

 a b c 

После того, как вы запустите выше, используйте tail чтобы посмотреть на последние строки (в этом случае очень мало строк, чтобы он просматривал весь файл):

 $ tail example.txt a b c 3 

объяснение

  • вы уже знаете wc -l example.txt котором указывается количество строк результата и имя файла, например 3 example.txt
  • команда cut позволяет извлекать «поля» из строк
  • -d – установить разделитель / разделитель полей, который мы укажем как ' ' , пробел.
  • -f1 означает выбор первого поля, поэтому заданный выход wc был 3 example.txt 3 является первым полем
  • >> добавляет, поэтому сохраняет результат 3 , до конца файла example.txt

Следующий скрипт добавляет счетчик строк в конец файла, если он еще не существует, но удаляет и заменяет его, если уже есть счет строки.

Это позволяет запускать этот скрипт каждый раз, когда ваши файлы редактируются без добавления нескольких строк «Счет строки:».

 #! /bin/bash count=$(wc -l "$1" | cut -d' ' -f1) tail -1 "$1" | grep -q '^Line count: ' if [ $? ]; then count=$(( $count - 1 )) # don't count the 'Line count' line sed -i -e '$ d' "$1" echo "Line count: $count" >> "$1" else echo "Line count: $count" >> "$1" fi 

Чтобы добавить только количество строк, вы можете попробовать это

 $ cat example.txt | wc -l >> example.txt 

Это отображает только общее количество строк в файле