Перейти к содержанию

bash. Как обработать файл построчно


Гость

Рекомендуемые сообщения

Есть лог-файл такого вида.

Date ; Time ; Port ; RxBytes : TxBytes
2005.08.16;22:00:00;1;100100;500500;
2005.08.16;22:10:00;1;100200;500600;
2005.08.16;22:20:00;1;100400;501700;

В RxBytes - снятые значения счетчика нарастающим итогом.

Мне надо посчитать трафик за период.

Пытаюсь со своим дельфийским подходом прочитать файл построчно в переменные. Хотелось бы обойтись только bash, без Perl.

for str in `cat $log_file`
do
  echo $str
done

Но этот код читает пословно (до разделителя).

Из первой строчки читается только Date.

Как прочитать построчно, разложив на переменные по разделителям.

Может можно где-то посмотреть рабочий скрипт для подобного?

Ссылка на комментарий
Поделиться на другие сайты

Аноним писал(а) чт, 25 августа 2005 12:02

У меня пока проблема прочитать всю строку.

Разделить на поля можно через awk.

Ну так и читайте все через awk.

Ссылка на комментарий
Поделиться на другие сайты

Вот эта конструкция:

while read LINE
do
...
...
done<$LOGFILE

будет считывать файл, указанный в переменной LOGFILE, построчно и записывать считанную строку в переменную LINE.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...