У меня есть следующий CSV
1.2kbps,link1,description
1.2mbps,link2,description
Я бы хотел например, найти и заменить
a) точка и кбит / с на 000 в столбце1
б) точка и мбит / с на 000000 в столбце1 при использовании gawk или awk вывод должен выглядеть следующим образом
12000,link1,description
12000000,link2,description
Я предпочитаю Gawk, но могу использовать примеры awk и поиграть с ним
Спасибо
Попробуйте это (проверено на GNU Awk 3.1.7):
awk '{sub(/\./,"");sub(/kbps/,"000");sub(/mbps/,"000000")}1' foo.csv
Это должно решить вашу проблему:
awk -F, '
BEGIN{OFS=FS}
/kbps/{gsub("kbps","",$1);$1=$1*1000};
/mbps/{gsub("mbps","",$1);$1=$1*1000000}
1' file.csv