The UNIX and Linux Forums  

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Британские компании shunning данных в режиме реального времени анализ iBot Комплекс обработки событий RSS Новости 0 07-14-2008 08:30 PM
Введение в Real-Time Data интеграции iBot Oracle Обновления (RSS) 0 04-06-2008 06:10 AM
CSV слияния данных с использованием одного из корпуса лайнера? jjinca Shell программирование и сценарии 2 08-13-2007 12:15 PM
Нужна помощь в течение 2 файла данных слияния getdpg Shell программирование и сценарии 2 07-12-2006 10:07 AM
Объединение данных REV Shell программирование и сценарии 8 06-03-2005 04:14 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 07-17-2008
Ikon's Avatar
IKON Ikon is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Место проведения: Феникс, штат Аризона
Сообщений: 669
Слияние последних и журнале данные о времени

Это на HP-UX системе.

Мне нужно объединить 2 докладов, для каждой строки в журнале мне нужно для поиска, который был зарегистрирован в ВТС / # исходя из времени из last.txt доклад.

Вот что я получаю от sulog.log

Кошка журнале | grep "Су:" | grep "14 июня"


14 июля 08:02:48 Server1 вс: - 2 user1-корень
14 июля 09:13:23 Server1 вс: + 2 user1-корень
14 июля 12:03:03 Server1 вс: + 2 user1-корень
14 июля 18:15:13 Server1 вс: + 3 user2 корня
14 июля 15:03:01 Server1 вс: + 4 user7-корень

- 2 \u003d PTS / 2
+ 2 \u003d PTS / 2
+ 3 \u003d PTS / 3
т.д. ...





Это из последнего сообщения:

глава last.txt | grep "Июль 14"
user1 PTS / 2 10.0.0.1 Thu Jul 14 08:00 - 10:00 (02:00)
user1 PTS / 2 10.0.0.2 Thu Jul 14 11:00 - 13:00 (02:00)
user2 PTS / 3 10.0.0.3 Wed Jul 14 16:00 - 20:00 (04:00)
user7 ВТС / 4 hostx ср 14 июля 13:25 - 16:01 (02:35)
.
.
.
.

Так что я мог бы получить:

14 июля 08:02:48 Server1 вс: - 2 user1 корня 10.0.0.1
14 июля 09:13:23 Server1 вс: + 2 user1 корня 10.0.0.1
14 июля 12:03:03 Server1 вс: + 2 user1 корня 10.0.0.2
14 июля 18:15:13 Server1 вс: + 3 user2 корня 10.0.0.3
14 июля 15:03:01 Server1 вс: + 4 user7-корень hostx

Любая помощь будет велика.

Последний раз редактировалось IKON; на 07-17-2008 12:33 PM..
Old 07-17-2008
Franklin52 Franklin52 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2007
Сообщения: 4322
Если у вас есть первые результаты в file1 и второй вывод в file2:

Код:
awk '
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
a[$7]{$0=$0 FS a[$7]}
{print}
' file2 file1
Если вы получаете ошибки, использование nawk, остолоп / или usr/xpg4/bin/awk на Solaris.

Привет
Old 07-17-2008
Ikon's Avatar
IKON Ikon is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Место проведения: Феникс, штат Аризона
Сообщений: 669
Цитата:
Первоначально Послано Franklin52 View Post
Если у вас есть первые результаты в file1 и второй вывод в file2:

Код:
awk '
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
a[$7]{$0=$0 FS a[$7]}
{print}
' file2 file1
Вы рок, который прекрасно работает ...

Пара вопросов ...
Им еще learing AWK ... Можете ли вы объяснить, как это работает .. Что делает его таким I DONT придется просить о других сценариев в будущем, и я могу помочь другим больше.

очень признателен.
Old 07-17-2008
Franklin52 Franklin52 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2007
Сообщения: 4322
Код:
awk '
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
a[$7]{$0=$0 FS a[$7]}
{print}
' file2 file1
Объяснение:

Код для первого файла (file2):

Код:
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
NR \u003d\u003d ПЧН -> Это верно, когда мы читаем первый файл.
Сплит ($ 2, S ,"/") -> Мы разделили второе поле, чтобы получить ключи 2, 3 и др.
I \u003d S [2] -> Я в настоящее время является ключевым
A [I] \u003d $ 3 -> Создать массив "А" с ключом, как индекс и присвоить значение из 3-х местах в массиве
следующий -> Прочитать следующую строку и перейдите на остальной части кода

Код для второго файла (file1):

Код:
a[$7]{$0=$0 FS a[$7]}
{print}
A [$ 7] ($ 0 \u003d $ 0 FS A [$ 7]) ->, Если 7-м местах существует в массиве добавить fieldseperator и значение массива после строки (это 3-х местах из первых файл)
(печать) -> Напечатать строку.

Надеюсь, что это помогает.

Привет
Old 07-17-2008
Ikon's Avatar
IKON Ikon is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Место проведения: Феникс, штат Аризона
Сообщений: 669
ОК есть проблема, нет проверки на основании времени.

Я должен проверить, кто был зарегистрирован в ВТС / # основан на том, что раз он был зарегистрирован.

Я знаю, что могу сделать это в Perl, Но, скорее всего нет.

если у меня есть:

14 июля 08:02:48 Server1 вс: - 0 user1-корень
14 июля 09:13:23 Server1 вс: + 0 user1-корень
14 июля 12:03:03 Server1 вс: + 0 user1-корень
14 июля 18:15:13 Server1 вс: + 0 user2 корня
14 июля 15:03:01 Server1 вс: + 0 user7-корень


и


user1 баллов / 0 10.0.0.1 Thu Jul 14 08:00 - 10:00 (02:00)
user1 баллов / 0 10.0.0.2 Thu Jul 14 11:00 - 13:00 (02:00)
user2 баллов / 0 10.0.0.3 Wed Jul 14 16:00 - 20:00 (04:00)
user7 баллов / 0 hostx ср 14 июля 13:25 - 15:01 (02:35)

Я получаю:

14 июля 08:02:48 Server1 вс: - 0 user1 корня hostx
14 июля 09:13:23 Server1 вс: + 0 user1 корня hostx
14 июля 12:03:03 Server1 вс: + 0 user1 корня hostx
14 июля 18:15:13 Server1 вс: + 0 user2 корня hostx
14 июля 15:03:01 Server1 вс: + 0 user7-корень hostx

Последний раз редактировалось IKON; на 07-17-2008 03:56 PM..
Old 07-17-2008
Franklin52 Franklin52 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2007
Сообщения: 4322
Вы должны иметь одно или более полей (ключевой) в обоих файлах присоединиться к файлам.

Привет
Old 07-17-2008
Ikon's Avatar
IKON Ikon is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Место проведения: Феникс, штат Аризона
Сообщений: 669
Цитата:
Первоначально Послано Franklin52 View Post
Вы должны иметь одно или более полей (ключевой) в обоих файлах присоединиться к файлам.

Привет
Общие поля

Имя пользователя: "userX" \u003d "userX"-XXXXXXXX

ПКТ: ПКТ / "#" \u003d - "#" userX .......

Время: ##:##:## в ##:## - ##:##

, что обычно достаточно?
Closed Thread

Закладки

Теги
Solaris

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 11:42 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0