Допустим, у меня есть 2 файла:
$ cat file1
A:10
B:5
C:12
$ cat file2
100 A
50 B
42 C
Я хотел бы иметь что-то вроде:
A 10 100
B 5 50
C 12 42
Я пробовал это:
awk 'BEGIN{FS=":"}NR==FNR{a[$1]=$2;next}{FS=" ";print $2,a[$2],$1}' file1 file2
Что выводит меня, что:
100 A
B 5 50
C 12 42
Я предполагаю, что проблема связана с разделителем полей, который установлен слишком поздно для второго файла. Как я могу установить разные разделители полей для разных файлов (а не для одного файла)?
Спасибо
Изменить: более общий случай
С файлом2 и файлом3 вот так:
$ cat file3
A:10 foo
B:5 bar
C:12 baz
Как получить :
A 10 foo 100
B 5 bar 50
C 12 baz 42