чем обработать файл стороковый
В нем же есть printf с форматами типа "%3.5f"
можешь написать пример скрипта, а я попробую догнать и поправить до нужного мне варианта ?
cat infile | awk -F, '{ printf $1 "%.3f,%.3f,%.3f ;\n", substr($2, 2 $3, $4 }' > outfile
#!c:/perl/bin/perl -w
use strict;
my($str);
$str = "#61=CARTESIAN_POINT('Control Point'585.375048106,89.7324997172,190.689941733 ;";
if($str =~ /\\d+\.\d+\d+\.\d+\d+\.\d+)\)/){
printf("%.3f\n", $1);
printf("%.3f\n", $2);
printf("%.3f\n", $3);
}
а как его доработать, чтобы он трогал только строчки с подстрокой CARTESIAN_POINT, а остальные не менял?
благодарю, но боюсь, нужно будет ещё пол дня потратить на освоение перла )
awk -F, '/CARTESIAN_POINT/ { printf $1 "%.3f,%.3f,%.3f ;\n", substr($2, 2 $3, $4 } !/CARTESIAN_POINT/ { print $0 }'
спасибо
Оставить комментарий
Makc500
есть файл, в котором встречаютс строки вида#61=CARTESIAN_POINT('Control Point'585.375048106,89.7324997172,190.689941733 ;
нужно эти строки преобразовать (не трогая остальные) в
#61=CARTESIAN_POINT('Control Point'585.375,89.732,190.689 ;
т.е., округлить числа, и сохранить в другой файл
чем это проще сделать?