Eliminar caracteres de un csv
Estoy siguiendo antiguos post tuyos y he logrado hacer algún avance en lo que necesito.
Tengo unos ficheros .csv con nombre pbx_2020_04_20. Csv, cada día me da uno nuevo y al cual le tengo que eliminar las 3 últimas columnas y como no sabia como hacerlo se me ha ocurrido hacer un .bat que me quite el texto no deseado.
El fichero es de una centralita que me da las llamadas y necesito quitar el final que puede ser (, 27, xxx,), (, 27, xxxx), (, 33, xxx,), (, 33, xxxx,), (, 44, xxx), etc.Te pongo un trocito del texto:
StartTime, duration, caller, callee, cost, price, endpointType, endpointId, company, carrier, ddi, Provider
"2020-04-20 08:33:23", 151,+2000+3491xxxxxx,, 0.0378, User, 608,81,27,755,
"2020-04-20 08:45:36", 16,+2003,+3491xxxxxx,, 0.004, User, 407,52,27,561,
"2020-04-20 08:55:32", 74,+2000,+3462xxxxxx,, 0.0617, User, 1199,52,33,1392,
"2020-04-20 08:59:38", 51,+2001,+3491xxxxxx,, 0.0425, User, 1199,52,27,10041,
Lo que me gustaría hacer es quitar eso y que el fichero salga así:
StartTime, duration, caller, callee, cost, price, endpointType, endpointId, company, carrier, ddi, Provider
"2020-04-20 08:33:23", 151,+2000+3491xxxxxx,, 0.0378, User, 608,81
"2020-04-20 08:45:36", 16,+2003,+3491xxxxx,, 0.004, User, 407,52
"2020-04-20 08:55:32", 74,+2000,+3462xxxxx,, 0.0617, User, 1199,52
"2020-04-20 08:59:38", 51,+2001,+3491xxxxxx,, 0.0425, User, 1199,52
He probado con esto y funciona, pero tengo que poner una linea 'set linea=!linea:^,27,755,^=!' por cada código que quiero eliminar y es que pueden ser cientos
@echo off
Setlocal EnableDelayedExpansion
del /q kkk.csv
for /f "delims=" %%a in ('type *.csv') do (
set linea=%%a
set linea=!linea:^,27,755,^=!
Echo ! Linea! >> Kkk. Csv
Si fuera posible, me gustaría hacer también, que el csv que he modificado se guarde con el nombre del original y el original se renombre al OLD. Es decir OLD_pbx_2020_04_20. Csv para conservar una copia del original.
Si me pudieras ayudar te estaría muy agradecido.