сравнение полей в разных текстах (с повторяющимися полями)

Альтернативное решение с использованием findс -path:

$ find /level1 -type f -path "/level1/user??/dir02/*.oz" -print

Это напечатает пути всех обычных файлов, чей (полный) путь соответствует /level1/user? ?/dir02/*.oz.

Если вы знаете, что файлы находятся в каталоге dir02(а не в его подкаталоге), тогда они будут перечислены:

printf '%s\n' /level1/user??/dir02/*.oz
0
23.09.2016, 22:10
3 ответа

Как насчет

awk 'NR==FNR {a[$1]=$2; next;} a[$1]==$2' text1 text2
house structure
bank economy

или если вам нужен фактический подсчет

awk 'NR==FNR {a[$1]=$2; next;} a[$1]==$2 {c[$1]++} END {for (i in c) print i, c[i]}' text1 text2
house 1
bank 1
1
28.01.2020, 02:27

Это не ответ Linux, но для такого рода вещей я бы портировал оба файла в Excel, а затем использовал vlookup и / или count для их сравнения.

1
28.01.2020, 02:27

Судя по вашему примеру, кажется, что вы хотите узнать, присутствует ли данная строка из первого файла во втором файле. Если это так, вы можете сделать

grep -c -f file1 file2

. В этом контексте также посмотрите этот и этот пост, если скорость является проблемой.

1
28.01.2020, 02:27

Теги

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