Чтобы устранить проблему, выполните следующие команды:
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
Правильным подходом к обработке этих файлов будет декодирование A.tsv
в словарь с ключом $1
, сохранение содержимого всей строки и последующее использование его B.tsv
для поиска значений, т.е.
awk -v FS="\t" ' FNR == NR { arr[$1] = $0; next }
( $1 in arr ){ print arr[$1]; next } { print $1 }' A.tsv B.tsv
Если вы хотите, чтобы окончательный результат был отсортирован по $1
, вам может потребоваться проиндексировать содержимое обоих файлов и окончательно обработать его в END
, распечатав только ключ, если значение отсутствует
awk -v FS="\t" ' FNR == NR { arr[$1] = $0; next }
!( $1 in arr ) { arr[$1] } END { for (x in arr) print arr[x] ? arr[x] : x }' A.tsv B.tsv