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



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

Closed Thread
English Japanese Spanish French German Portuguese Italian Powered By Powered by Google
 
Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 06-29-2007
Зарегистрированный пользователь
 

Регистрация: Июнь 2007
Сообщений: 3
колонка поиска

Привет,
Мне нужно искать одного файла основывается на въезд от другого;
напр.
file1 имеет записей;

45654
34768
12345

File2 имеет записей

23234 somestring 4312
45654 somestring 34768
12345 somestring 45654

так мне нужно выбрать первого въезда в file1, который напр. '45654 'И искать эту запись только в "колонке 1' из file2. Затем сохраните 3 входа (колонка 3) из той же линии на переменную. (будет использоваться позже).
Любая помощь будет признателен.
Рекламные ссылки
Old 06-29-2007
Зарегистрированный пользователь
 

Регистрация: May 2007
Место проведения: Глазго, Шотландия
Сообщений: 59

Код:
$ ls file?
file1  file2
$ cat file1
45654
34768
12345
$ cat file2
23234 somestring 4312
45654 somestring 34768
12345 somestring 45654
$ join -o 2.3 file1 file2
34768

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

-C
Old 06-29-2007
Shell_Life's Avatar
Зарегистрированный пользователь
 

Регистрация: Mar 2007
Место проведения: Байя, Бразилия
Сообщений: 695
Крейг,
Ваше решение не хватает:
45654

Имейте в виду, что "вступить в себя как файлы сортируются.

Чтобы устранить проблему:

Код:
sort file1 > $$temp1
sort file2 > $$temp2
join -o 2.3 $$temp1 $$temp2

PS: Я не думаю, что это позволит решить 'user_007' вопроса.
Old 06-29-2007
Shell_Life's Avatar
Зарегистрированный пользователь
 

Регистрация: Mar 2007
Место проведения: Байя, Бразилия
Сообщений: 695
Вот решение поместить значения в переменные:

Код:
sort file1 > $$temp1
sort file2 > $$temp2
join -o 1.1 2.3 $$temp1 $$temp2 | \
while read mLine
do
  set -- $mLine
  echo "Pattern = "$1" Result = "$2
done
rm -f $$*

Old 06-29-2007
Зарегистрированный пользователь
 

Регистрация: Июнь 2007
Сообщений: 3
Колонка поиска

Спасибо за ответы, ребята.
Но 'прихода' isn't собирается решить мою проблему.

То, что я пытаюсь сделать, это выбрать один пункт, в то время из file1 и найдите соответствующую запись в file2 и сохранить ценности, связанные в column3 этого файла 2 в переменную X.

$ Кота file1
45654
34768
12345
$ Кота file2
23234 somestring 4312
45654 somestring 34768
12345 somestring 45654

Так например, моя первая запись в file1 является'45654 '.
Соответствующее значение в Column3 из file2 это 34768.
Так что я хотел, чтобы сохранить это значение в переменную X.
Old 06-29-2007
Shell_Life's Avatar
Зарегистрированный пользователь
 

Регистрация: Mar 2007
Место проведения: Байя, Бразилия
Сообщений: 695
User_007,
Мое решение делает ровно то, что вы ищете.
Old 06-30-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Зарегистрированный пользователь
 

Регистрация: Apr 2004
Расположение: Бордо, Франция
Сообщения: 1434
Вы можете сделать что-то вроде:


Код:
while read item1
do
   X=$(awk -v value1="$item1" '$1 == value1 { print $3 }' file2)
done < file1

Это решение является приемлемым только в случае, если file1 содержит очень мало записей, так как файл file2 читается для каждой записи file1.

После чтения значения переменной Х, то, что ты хочешь сделать?
Если вы не хотите, чтобы обновить файл file2, наилучший способ состоит в использовании Shell_Life 'раствор (item1 \u003d $ 1 и X \u003d $ 2).
Рекламные ссылки
Closed Thread

Закладки

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

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

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

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


Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Экстракт колонки по имени t27 UNIX для чайников Вопросы И Ответы 3 08-29-2007 02:04 PM
Выберите запись основана на первой колонке mgirinath Shell программирование и сценарии 8 07-16-2007 02:38 AM
Получить строку из файла, основанный на стоимости в конкретных колонка efernandes UNIX для чайников Вопросы И Ответы 1 01-27-2007 11:04 AM
Выберите отчеты основаны на критерии поиска по первой колонке shashi_kiran_v UNIX для чайников Вопросы И Ответы 2 12-02-2005 01:49 PM
Фильтр основан на колонку стоимости rraajjiibb Shell программирование и сценарии 2 05-25-2004 10:09 AM



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


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

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