The UNIX and Linux Forums  

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



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

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Доклад поколения gmahesh2k Shell программирование и сценарии 3 05-16-2008 03:33 AM
Доклад поколения gmahesh2k UNIX для чайников Вопросы И Ответы 2 05-16-2008 02:41 AM
Поколение копирования файлов для резервного копирования технической поддержки sjohnson UNIX для чайников Вопросы И Ответы 12 04-04-2008 08:39 AM
Oracle Доклад поколения DILEEP410 Shell программирование и сценарии 7 01-04-2007 04:52 AM
Штрих-код поколения в текстовый файл и печать, используя тот же LP команды. Manjunath Наик SUN Solaris 0 05-26-2005 03:50 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 03-15-2008
McLan McLan is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Сообщений: 21
AWK-отчета от входной файл

Я входной файл ниже содержания:

Лицо:
Название: Firstname1 lastname1
Адрес: 111, Straat
Город: Hilversum

Лицо:
Название: Fistname2 lastname2
Адрес: 222, улица
Соч: Bussum

Лицо:
Название: Firstname2 lastname3
Адрес: 333, станция Straat
Город: Амстердам

Мне нужен выходной файл withe ниже содержание:
lastname1 111 Hilversum
lastname2 222 Bussum
lastname3 333 Амстердам

возможно ли, если да, то каким образом?

Спасибо
Old 03-15-2008
Klashxx's Avatar
Klashxx Klashxx is offline Forum Advisor  
HP-UX/Linux/Oracle
  
 

Регистрация: Февраль 2006
Место проведения: Альмерия ", Испания
Сообщений: 393
Таким образом:

Код:
awk '/^Name/{n=$NF}/^Address/{a=$2}/^City/{print n,a,$NF}' FS="( )|(,)" file

Old 03-16-2008
McLan McLan is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Сообщений: 21
AWK-отчета от входной файл

Благодаря Klashxx
его прекрасная, она работает.
Я пытался undersand чем FS \u003d "()|(,)" делать?
Не могли бы вы дать больше информации по этому вопросу, но без вышеупомянутой также вывод же
AWK '/ ^ Название / \u003d (N) $ Н.Ф. / ^ Адрес / A \u003d (2) $ / ^ Город / (печати N, A, $ Н.Ф.)' inpfile
lastname1 111, Hilversum
lastname2 222, Bussum
lastname3 333, Амстердам

Теперь запрос отличается:
входной файл:
Лицо:
Название: Firstname1 lastname1
Адрес: 111, улица "Narder Straat"
Город: Hilversum

Лицо:
Название: Fistname2 lastname2
Адрес: 222, улица "Zoud Straat"
Город: Bussum

Лицо:
Название: Firstname2 lastname3
Адрес: 333, улица "Станция Straat"
Город: Амстердам


Мне нужен файл outout как ниже:
lastname1 111 "Narder Straat" Hilversum
lastname2 222 "Zoud Straat" Bussum
lastname3 333 "Станция Straat" Амстердам

Еще раз спасибо
Old 03-16-2008
yunccll yunccll is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Сообщений: 23
FS означает Поле Разделитель, используя ПС \u003d "()|(,)" означает что ПС это пространство или ','
Если вы используете это заявление, в результате
lastname1 111 Hilversum
lastname2 222 Bussum
lastname3 333 Амстердам

без ПС \u003d"()|(,)" результат:
lastname1 111, Hilversum
lastname2 222, Bussum
lastname3 333, Амстердам

они отличаются, прежде составляет 111, и потом, это 111,


Код:
> cat data
Person:
Name: Firstname1 lastname1
Address: 111, Street "Narder straat"
City : Hilversum
 
Person:
Name : Fistname2 lastname2
Address: 222, Street "Zoud straat"
City: Bussum
 
Person:
Name : Firstname2 lastname3
Address: 333, Street "Station straat"
City: Amsterdam


Код:
> awk 'BEGIN{FS="( )|(,)"} /^Name/{n=$NF}/^Address/{a=$2" "$4" "$5}/^City/{print n,a,$NF}' data
lastname1 111 "Narder straat" Hilversum
lastname2 222 "Zoud straat" Bussum
lastname3 333 "Station straat" Amsterdam

. Аарон
Old 03-16-2008
McLan McLan is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Сообщений: 21
Привет Аарона
Это нормально, так что мы отображение 4 и 5-го поля адреса.
Я не уверен, что если на улице содержит всего 2 поля, оно может содержать более таких областях, как "ваше и мое Straat И другие Straat а" в данном случае я не могу использовать только 4-й и 5-го поля.
Таким образом, чтобы быть очень четкими, мое требование
Мне нужен 3-го места из строки, содержащей название с ПС "" пространство:
Мне нужно 2-го места от линии, которая содержит адрес с FS () пространства и необходимость 2-го подал в одной строке с FS ( ") Цитата и
Мне нужен 2-й пол форма строки, содержащей города с FS () пространстве.

Спасибо еще раз.
McLan
Old 03-16-2008
yunccll yunccll is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2008
Сообщений: 23

Код:
awk 'BEGIN{FS="( )|(,)"} /^Name/{n=$NF}/^Address/{split($0, arr, "\""); a=$2" \"" arr[2]"\""}/^City/{print n,a,$NF}' data

может быть, это то, что вы хотите!

. Аарон
Closed Thread

Закладки

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

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

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

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




Часовой пояс GMT -4. Текущее время 12:03 PM.


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