Вот очень простой подход. У меня отлично работает с gawk 3.1.7.
#!/usr/bin/awk -f
{
for(x=2;x<=NF;x++) {
if(x$x in a) {
$x=a[x$x]
} else {
if($x=="NA") {
print $x,0 > "column"x
a[x$x]=0
$x="0"
} else {
m[x]++
print $x,m[x] > "column"x
a[x$x]=m[x]
$x=m[x]
}
}
}
print $0 > "results"
}
Покопавшись в загрузочном журнале, я обнаружил ошибку, в которой упоминалось, что процессу шифрования не хватило памяти. После увеличения системной памяти виртуальной машины теперь все работает как положено.
Возможно, это поможет кому-то, столкнувшемуся с похожей проблемой, так как я ничего не читал о минимальных требованиях к памяти для процесса расшифровки