Настройте сетевой мост Debian с DHCP

Если у вас установлено ruby:

$ ruby -0777 -F'\n' -lane '$F.combination(2) { |c| puts c.join(" ")}' ip.txt
a b
a c
a d
a e
b c
b d
b e
c d
c e
d e
  • -0777глотать весь файл (должно быть нормально, так как в ОП упоминается, что размер файла мал)
  • -F'\n'разделение на основе новой строки, поэтому каждая строка будет элементом массива $F
  • $F.combination(2)генерировать комбинации 2элементов за раз
  • { |c| puts c.join(" ")}распечатать при необходимости
  • если входной файл может содержать дубликаты, используйте$F.uniq.combination(2)


для 3 элементов одновременно:

$ ruby -0777 -F'\n' -lane '$F.combination(3) { |c| puts c.join(" ")}' ip.txt
a b c
a b d
a b e
a c d
a c e
a d e
b c d
b c e
b d e
c d e


Сperl(не общие)

$ perl -0777 -F'\n' -lane 'for $i (0..$#F) {
                             for $j ($i+1..$#F) { 
                               print "$F[$i] $F[$j]\n" } }' ip.txt
a b
a c
a d
a e
b c
b d
b e
c d
c e
d e


Сawk

$ awk '{ a[NR]=$0 }
       END{ for(i=1;i<=NR;i++)
              for(j=i+1;j<=NR;j++)
                print a[i], a[j] }' ip.txt 
a b
a c
a d
a e
b c
b d
b e
c d
c e
d e
2
02.07.2020, 05:18
0 ответов

Теги

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