У мене є два файли з приблизно 12900 і 4400 записами відповідно, які я хочу приєднати. Файли містять інформацію про місцеположення для всіх станцій спостереження за погодою на суші по всій земній кулі. Найбільший файл оновлюється щотижня, а менший - раз на рік. Оригінальні файли можна знайти тут ( http://www.wmo.int/pages/prog/www/ois/volume-a/vola-home.htm та http://weather.rap.ucar.edu/surface/ station.txt ). Файли, які я маю, вже маніпулюють мною за допомогою якогось змішаного сценарію awk, sed та bash. Я використовую файли для візуалізації даних за допомогою пакету GEMPAK, який є у вільному доступі від Unidata. Найбільший файл буде працювати з GEMPAK, але тільки не з його повною здатністю. Для цього потрібне приєднання.
Файл 1 містить інформацію про місцезнаходження станцій спостереження за погодою, де перші 6 цифр є унікальним ідентифікатором станції. Різні параметри (номер станції, назва станції, код країни, довгота широти та висота станції) визначаються лише його положенням у рядку, тобто немає вкладок.
060090 AKRABERG FYR DN 6138 -666 101
060100 VAGA FLOGHAVN DN 6205 -728 88
060110 TORSHAVN DN 6201 -675 55
060120 KIRKJA DN 6231 -631 55
060130 KLAKSVIK HELIPORT DN 6221 -656 75
060160 HORNS REV A DN 5550 786 21
060170 HORNS REV B DN 5558 761 10
060190 SILSTRUP DN 5691 863 0
060210 HANSTHOLM DN 5711 858 0
060220 TYRA OEST DN 5571 480 43
060240 THISTED LUFTHAVN DN 5706 870 8
060290 GROENLANDSHAVNEN DN 5703 1005 0
060300 FLYVESTATION AALBORG DN 5708 985 13
060310 TYLSTRUP DN 5718 995 0
060320 STENHOEJ DN 5736 1033 56
060330 HIRTSHALS DN 5758 995 0
060340 SINDAL FLYVEPLADS DN 5750 1021 28
Файл 2 містить унікальний ідентифікатор у Файлі 1 та другий ідентифікатор 4 символів (локатор ICAO).
060100 EKVG
060220 EKGF
060240 EKTS
060300 EKYT
060340 EKSN
060480 EKHS
060540 EKHO
060600 EKKA
060620 EKSV
060660 EKVJ
060700 EKAH
060780 EKAT
Я хочу приєднати два файли, так що отриманий файл матиме ідентифікатор 4 символів у перших 4 позиціях рядка, тобто ідентифікатор повинен замінити 4 пробіли.
060090 AKRABERG FYR DN 6138 -666 101
EKVG 060100 VAGA FLOGHAVN DN 6205 -728 88
060110 TORSHAVN DN 6201 -675 55
060120 KIRKJA DN 6231 -631 55
060130 KLAKSVIK HELIPORT DN 6221 -656 75
060160 HORNS REV A DN 5550 786 21
060170 HORNS REV B DN 5558 761 10
060190 SILSTRUP DN 5691 863 0
060210 HANSTHOLM DN 5711 858 0
EKGF 060220 TYRA OEST DN 5571 480 43
EKTS 060240 THISTED LUFTHAVN DN 5706 870 8
060290 GROENLANDSHAVNEN DN 5703 1005 0
EKYT 060300 FLYVESTATION AALBORG DN 5708 985 13
060310 TYLSTRUP DN 5718 995 0
060320 STENHOEJ DN 5736 1033 56
060330 HIRTSHALS DN 5758 995 0
EKSN 060340 SINDAL FLYVEPLADS DN 5750 1021 28
Чи можливо виконати це завдання за допомогою якогось сценарію bash та / або awk?