Самый простой способ, вероятно, состоит в том, чтобы просто сделать ваш разделитель полей " чем-либо, что не является числовым ".
[ghoti@pc ~]$ cat input.txt
A: 1, 2, 3, 4
B: 1,2; 3, 4
[ghoti@pc ~]$ awk -F'[^0-9]+' '{$1=$1; print;}' input.txt
1 2 3 4
1 2 3 4
[ghoti@pc ~]$
Бит $1=$1
просто заставляет awk переписать$0
с использованием разделителя полей вывода по умолчанию.
Обновление:
Более явный вывод:
[ghoti@pc ~]$ awk -F'[^0-9]+' '{printf("1=%s 2=%s 3=%s 4=%s 5=%s\n", $1, $2, $3, $4, $5);}' input.txt
1= 2=1 3=2 4=3 5=4
1= 2=1 3=2 4=3 5=4
[ghoti@pc ~]$