0
Я хочу объединить два файла в Unix. Как я могу это сделать?Как объединить два файла в unix
например file1 содержит:
host1:90:/users:user1
host2:90:/users:user1
host3:90:/users:user1
host4:90:/users:user1
host5:90:/users:user1
host6:90:/users:user1
host7:90:/users:user1
file2 содержит:
host1:owner_name
host2:owner_name
host3:owner_name
host4:owner_name
host5:owner_name
host6:owner_name
host7:owner_name
выходной результат:
host1:90:/users:user1:owner_name
host2:90:/users:user1:owner_name
host3:90:/users:user1:owner_name
host4:90:/users:user1:owner_name
host5:90:/users:user1:owner_name
host6:90:/users:user1:owner_name
host7:90:/users:user1:owner_name
я использовал эту команду paste -d ':' file1 file2 >merged_file
, но это то, что я получаю:
host1:90:/users:user1:host1:owner_name
host2:90:/users:user1:host2:owner_name
host3:90:/users:user1:host3:owner_name
host4:90:/users:user1:host4:owner_name
host5:90:/users:user1:host5:owner_name
host6:90:/users:user1:host6:owner_name
host7:90:/users:user1:host7:owner_name
'join' работает, но полагаю, что если file2 не в отсортированном порядке, то он дает ошибку. Можем ли мы использовать sed или awk – pratik
@pratik Это можно устранить, отсортировав первое поле перед присоединением. Истинный вопрос: пытаетесь ли вы просто объединить файлы linewise или вы действительно пытаетесь объединить их вокруг первого столбца? – cnicutar
Я также хочу объединить файл на основе первого столбца. – pratik