The UNIX and Linux Forums  


Go Back   В UNIX и Linux Форумы > Топ форумы > UNIX для чайников Вопросы И Ответы
.
Google unix.com



UNIX для чайников Вопросы И Ответы Если вы не уверены в том, где разместить UNIX или Linux вопрос, задайте его здесь. Все UNIX и Linux приветствуем новичков!!

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
кол-нет слов в строке Сатиш @ 123 Shell программирование и сценарии 7 05-21-2008 03:59 AM
Необходимо определить строку, содержащую @ между строк в файл b.paramanatti UNIX для чайников Вопросы И Ответы 4 11-04-2007 10:50 PM
разделения слов из строки?? skyineyes Shell программирование и сценарии 3 06-26-2007 10:00
удалить строку и дублирующие линии оцелот UNIX для чайников Вопросы И Ответы 11 01-30-2007 12:44 PM
Повторяющиеся слова zulander UNIX для чайников Вопросы И Ответы 1 04-01-2001 04:11 AM

 
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 04-27-2007
srinivasan_85 srinivasan_85 is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2007
Сообщений: 28
Exclamation Определить дублировать слова в строке с помощью команды

Привет,
Позвольте мне пояснить эту проблему четко:
Пусть мои записи в файл:

Код:
lion,tiger,bear
apple,mango,orange,apple,grape
unix,windows,solaris,windows,linux
red,blue,green,yellow
orange,maroon,pink,violet,orange,pink

Можем ли мы обнаружить линий, в котором одно из слов (разделенные поле разделителя) наблюдается более чем один раз, используя команду (или команды труб)?
В данном случае, команда должна определить линий 2,3,5.

Я это достигнуто с помощью Perl Сценарий (цитируется ниже), хотя я ли это можно сделать с помощью команды (трудность заключается в том, что нет. столбцов не является постоянным).

Perl программы, которые я использовал:

Код:
$fname=<STDIN>;
chomp $fname;
open(file,"<$fname");
$found_dups=0;

for $line(<file>)
{
  chomp $line;
  @arr=split(/,/,$line);
  for($i=1;$i<=$#arr;$i++)
  {
     for($j=$i+1;$j<=$#arr;$j++)
     {
        if($arr[$i] eq $arr[$j])
        {
           print "tid $arr[0]\n";
           $found_dups++;
        }
     }
  }
}
print "Found $found_dups duplicates\n";

Спасибо,
Srini
 

Закладки

Теги
Linux

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

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

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

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




Часовой пояс GMT -4. Текущее время 07:04 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