![]() |
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.
|
|
Google unix.com
|
|||||||
| Форумы | Регистрация | Правила форума | Ссылки | Альбомы | ЧАВО | Список участников | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь. |
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| Как сцеплять последовательных линий | shivi707 | UNIX Desktop для чайников Вопросы И Ответы | 1 | 01-12-2009 09:08 AM |
| необходимо для объединения двух строк, если строка doesn't конце котировки | laxmi131 | UNIX перспективных И опытных пользователей | 9 | 10-27-2008 07:22 AM |
| сцеплять и дисплей 2 строки, как 1 с условием 2 линии? | vithala | Shell программирование и сценарии | 7 | 07-11-2008 02:01 AM |
| Необходимость решения сцеплять и дисплей 2 строки, как 1 с условием 2 линии? | vithala | UNIX перспективных И опытных пользователей | 1 | 07-10-2008 02:27 PM |
| Извлечение LOGFILE Входы | harpdl | Shell программирование и сценарии | 2 | 07-13-2006 02:40 PM |
![]() |
|
|
LinkBack | Резьба Инструменты | Искать в этом Thread | Оценить Thread | Режимы дисплея |
|
|
|
||||
|
LOGFILE - извлечение определенных строк для объединения на 1 линию
У меня в лог-файл с автоматическим диагностическим работает. В лог файл прилагается к каждой автоматической регистрации запускается.
Я хочу просто тянуть определенных строк из каждого запуска в лог файл, и связывать их в 1 запятые линии (для экспорта в Excel или HTML таблицу). Каждый диагностический запустить это в квадратных скобках, начинаться и заканчиваться комментарий поэтому я в состоянии группе, что способ, но у меня возникают проблемы при получении все в 1 строку. Типичные данные: Diags начать. Вторник Март 17 18:07:34 EDT 2009 Пароль: (123) Мощность Проверить . . [больше информации] Diags конца. Diags начать. Вторник Март 17 19:09:22 EDT 2009 FAIL: (123) Мощность Проверить . Описание: Напряжение зажим . . [подробнее отсутствии данных Детали] . Diags конца. Я хочу, чтобы время, результат испытания (на 123 тест) Я был в состоянии использовать AWK, чтобы закрыть, но я не могу получить его совсем. AWK '/ Diags начала / (getline; печати); (если ($ 2 \u003d\u003d "(123)") для печати $ 1, $ 2, $ 3, $ 4)' Это дает мне: Mon Mar 16 11:37:07 EDT 2009 Пароль: (123) Мощность Проверить Mon Mar 16 12:31:10 EDT 2009 Пароль: (123) Мощность Проверить Tue Mar 17 01:30:54 EDT 2009 ** FAIL: (123) Мощность Проверить Tue Mar 17 03:08:16 EDT 2009 Пароль: (123) Мощность Проверить Что я пытаюсь получить это: Mon Mar 16 11:37:07 EDT 2009 году, PASS: (123) Мощность Проверить Mon Mar 16 12:31:10 EDT 2009 году, PASS: (123) Мощность Проверить Tue Mar 17 01:30:54 EDT 2009 ** FAIL: (123) Мощность Проверить Tue Mar 17 03:08:16 EDT 2009 году, PASS: (123) Мощность Проверить Кроме того, я ищу способ просто потянуть за информацию в течение определенного срока (например, текущую дату - 7 дней), но я беспокоиться об этом позже .. детское шаги ... ![]() В системе Unix (HP-UX), так AWK, Perl, Или SED варианты. Спасибо за любую помощь .. Пол |
|
||||
|
#! / USR / BIN /Perl -W
использовать строгие; OPEN (FH, 'TXT'); моя $ FB \u003d 0; ул моя @; в то время как (мои строки $ \u003d <FH>) ( chomp ($ строка); если ($ линия \u003d ~ м / Diags начала /) ( FB \u003d $ 1; ) если ($ FB И И! ($ линия \u003d ~ м / Diags начала / | | $ линия \u003d ~ м / Diags конца /)) ( нажимаем @ ул $ линию; ) если ($ линия \u003d ~ м / Diags конца /) ( моя $ X \u003d присоединится "", ул @; Версия для печати "$ X \ N"; ул @ \u003d (); $ FB \u003d 0; ) ) Попробуйте это Ура Последний раз редактировалось daptal; на 03-17-2009 11:36 PM.. Основание: вывод |
|
||||
|
После вашего AWK сценарий - использование printf:
Код:
awk '/Diags begin/{getline;printf};{if ($2=="(123)") print ","$1,$2,$3,$4}'
|
|
||||
|
ОК, спасибо за хорошие идеи .. после взлома и проверки я получил, наконец, выход в работоспособный формат с использованием AWK.
Я выдавали результатов в ASCII-файл в формате запятые .. моя выходной файл называется tstres.txt и характерные линии в файле выглядит следующим образом: TSTR01, 29 марта 21:29:17 EDT 2009 году, PASS:, держава Проверить TSTR01, 30 марта 00:54:55 EDT 2009 году, PASS:, держава Проверить TSTR01, 30 марта 08:31:31 EDT 2009 ** FAIL:, держава Проверить TSTR02, Mar 07 14:41:08 EST 2009, PASS:, держава Проверить TSTR02, Mar 07 21:46:33 EST 2009, PASS:, держава Проверить Что является самым простым способом, пользуясь данными файла и вывода его в HTML таблице? Мой план заключается в том, чтобы запустить скрипт в CRON работу, и все мы должны делать это просмотра HTML-страницы. |
![]() |
| Закладки |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|