удаление выделенных строк из файла данных-part2 - PullRequest
0 голосов
/ 08 сентября 2011

Это следующее предыдущее обсуждение: ( удаление выбранных строк из файла данных )

Я пытался следовать идее, предложенной Фредирком и Гленном Джекманом, и я излагаю приведенный ниже код, чтобы печатать строки только в том случае, если пара чисел соответствует конкретному creteria.

Когда я выполняю код, вывод выводится, но он печатает все строки, а не только определенные.

 #!/usr/bin/awk -f

 BEGIN  {
   i=0
   for (n=1; n<=8; n++) set[i++] = n;
   for (n=57; n<=64; n++) set[i++] = n;
   for (n=9; n<=49; n+=8) {set[i++] = n; set[i++] = n+7};
    }


 /^|/{
     split($3, res1, "@"); split($6, res2, "@"); #print res1[1], res2[1]

     if ( (res1[1] in set) == (res2[1] in set) ); 

     {
       print;
       next;

     }

 }

Может ли кто-нибудь помочь найти ошибку, если она есть? Я могу понять, почему это не получается. Спасибо.

1 Ответ

1 голос
/ 08 сентября 2011

После команды if есть беспорядочная точка с запятой.Вы ничего не делаете, если это условие верно.А потом вы печатаете каждую строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...