Почему в выводе comm не отображаются общие записи?

Прочтите страницу руководства. Совершенно ясно, в чем заключается ошибка:

/usr/bin/pkg update [-fnvq] [-g path_or_uri ...]
    [--accept] [--licenses] [--no-index] [--no-refresh] [--no-be-activate]
    [--no-backup-be | --require-backup-be] [--backup-be-name name]
    [--deny-new-be | --require-new-be] [--be-name name]
    [--reject pkg_fmri_pattern ...] [pkg_fmri_pattern ...]

pkg update --accept , а не pkg --accept update.

1
15.04.2017, 00:54
1 ответ

comm должен сообщить вам, что один из файлов не отсортирован:

comm: file 1 is not in sorted order

Ожидается, что файлы будут отсортированы с использованием порядка сортировки текущей локали (как определено LC_COLLATE); он не примет числовой порядок.

Чтобы сравнить файлы, вы можете предварительно отсортировать их (лексикографически, как вы указываете):

comm <(sort file1) <(sort file2)

Если вы хотите, чтобы результат был отсортирован численно, отсортируйте его снова:

comm <(sort file1) <(sort file2) | sort -n

Это дает

1
2
3
4
5
6
7
8
9
11
12
13
15
        16
17
        18
19
20
        21
22
    23
    705
    707
    709
    711
    712
    826
    827
    839
    846
    847
    848
    872
    873
    874
    875
    891
4
27.01.2020, 23:19

Теги

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