#shell
#оболочка
Вопрос:
Я пишу сценарий оболочки для объединения данных.
У меня есть 2 файла с разными столбцами.
Один из столбцов одинаков в обоих файлах.
Like :
File 1:
a 5
c 7
d 9
b 5
File 2:
c 1
d 8
a 6
b 3
На данный момент мой скрипт помещает данные в тот же файл с
paste -d ' ' 'file1' 'file2' > "file3"
Я хотел бы знать, возможно ли сопоставить 2 столбца вместе и в порядке, подобном:
a 5 6
b 5 3
c 7 1
d 9 8
Спасибо
Ответ №1:
sort file1 > file1.tmp
sort file2 > file2.tmp
join -t " " -j 1 file1.tmp file2.tmp
Предполагается, что символы и числа разделены ПРОБЕЛОМ
Ответ №2:
Используя замену процесса, вы можете сортировать файлы и объединять их в одной команде.
join -t " " -j 1 <(sort file1) <(sort file2)
Ответ №3:
Используйте sort
для сортировки обоих файлов, а затем join
для объединения в первом поле.