use Fcntl 'SEEK_SET'; open my $fh, "+<", $file or die; local $/; local $_ = <$fh>; s/,(?=\n|$)//g; seek $fh, 0, SEEK_SET or die; print $fh $_ or die; truncate $fh, tell $fh or die; close $fh or die;