Ошибка при получении данных репозитория для epel, репозиторий не найден

perl -nE '%a = map { $.==1 || $a{$_} ? ($_,1):()} /(\d+)/g; 
          END{ say keys %a}'   file

Пояснение:

  • -n добавит цикл по всей программе, например:

     while (<>) {...} 
     
  • -E необходим Perl для выполнения командной строки (внутри этого цикла). Он также добавляет возможность использовать say

  • Каждая строка передается в / (\ d +) / g , который соответствует каждому числу (цифры рядом друг с другом) отдельно. Каждое число вводится в карту .

  • % a - это словарь чисел, которые до сих пор появлялись во всех строках. Он пересчитывается в каждой строке (% a = ... ).

  • в первой строке $. == 1 все числа сохраняются в словаре - добавляется пара (число, 1); 1 означает True

  • в других строках, все числа отфильтровываются () , если они также не присутствовали в последней итерации $ a {$ _}? .

  • Наконец, END {...} выводит все числа, которые повторяются во всех строках .

7
30.12.2015, 23:56
1 ответ

Для CentOS 7 вы можете попробовать это:

yum install epel-release-7
0
14.07.2020, 03:15

Теги

Похожие вопросы