awk '{g[$1] = g[$1] " " $3}
END {for (i in g) print i g[i]}' < file1 > file2
Или для сохранения заказа:
awk '! ($1 in g) {snp[n++] = $1}
{g[$1] = g[$1] " " $3}
END {for (i = 0; i < n; i++) print snp[i] g[snp[i]]}' < file1 > file2
Включить заголовок "SNP Genoa Genob...":
awk 'NR == 1 {header = $1; prefix = $3; next}
first == "" {first = "" $1}
$1 == first {header = header " " prefix $2}
! ($1 in g) {snp[n++] = $1}
{g[$1] = g[$1] " " $3}
END {
print header
for (i = 0; i < n; i++) print snp[i] g[snp[i]]
}' < file1 > file2
Добавьте строку TAB: menu-complete
в ~ / .inputrc
, например, с помощью следующей команды.
echo TAB: menu-complete >> ~/.inputrc
Выйти и снова войти в систему.