1-е решение: С GNU awk
не могли бы вы попробовать следующее.
awk -v OFS="," '{$1=$1}1' FIELDWIDTHS="2 3 4 5" Input_file
2-е решение: Используя sed
, попробуйте следующее.
sed 's/\(..\)\(...\)\(....\)\(.....\)/\1,\2,\3,\4/' Input_file
3-е решение: awk
решение с использованием substr
.
awk 'BEGIN{OFS=","} {print substr($0,1,2) OFS substr($0,3,3) OFS substr($0,6,4) OFS substr($0,10,5)}' Input_file
В приведенном выше решении substr
я взял 5 цифр / символов в substr($0,10,5)
на случай, если вы хотите взять все символы / цифры и т. Д., Начиная с 10-й позиции, используйте substr($0,10)
, который будет занимать все остальные символы / цифры строки здесь
Вывод будет следующим.
10,100,1000,10000
20,200,2000,20000