Ejecutar sendmail.exe desde consola
Tengo el siguiente batch
@echo off
Echo -------------------------------------------------------------------------------------------------------------
Title Generacion archivo de facturacion
Echo Fecho de arranque %DATE% %TIME% .
c:
cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn
bcp "select 'CodigoCampana Agente TipoCampana Oferta1 Oferta2 Identificacion NombreCliente FechaGestion Estatus UltimoTelefonoContacto Proveedor ObservacionMotivoNoDesea DuracionTotal DuracionUltimaLlamada NumeroIntentos TipoRegistro MontoColocadoOferta1 MontoColocadoOferta2' union all select isnull (campana_banco,'') + nchar(9) + isnull (agente,'') + nchar(9) + 'COMERCIAL' + nchar(9) + case campana when 'PCH_venta_no_cliente' then 'TARJETA DE CREDITO' when 'PCH_venta_cliente' then 'TARJETA DE CREDITO' when 'PCH_venta_adicional' then 'TARJETA DE CREDITO ADICIONAL' else '' end + nchar(9) + '' + nchar(9) + cedula + nchar(9) + cliente + nchar(9) + isnull (CONVERT(varchar(10),fecha_fin,121),'') + nchar(9) + ges.gestion + nchar(9) + isnull (isnull (tlf_llamada, substring ((select top(1) ph_number from reportes.dbo.intentos_telefonico where contact = easycode order by start_time DESC),2,10)),'') + nchar(9) + 'GXC' + nchar(9) + case g.gestion when 'CU4' then '' when 'SG' then '' else g.d_tipo_gestion end + nchar(9) + isnull (CONVERT(CHAR(8), DATEADD(ss,(select sum(duracion)/10 from reportes.dbo.intentos_telefonico where contact = easycode and estado_llamada = 'conectado'),'19000101'),108),'00:00:00') + nchar(9) + isnull (CONVERT(CHAR(8), DATEADD(ss,(select top (1) duracion/10 from reportes.dbo.intentos_telefonico where contact = easycode and estado_llamada = 'conectado' order by start_time DESC),'19000101'),108),'00:00:00') + nchar(9) + convert (varchar,(select count (contact) from reportes.dbo.intentos_telefonico where contact = ges.easycode and estado_llamada = 'marcando')) + nchar(9) + 'CAMPANAS' + nchar(9) + isnull ((case g.gestion when 'CU1' then convert (varchar(13), cupo)+'.00' else '0.00' end),'0.00') + nchar(9) + '0.00' from reportes.dbo.gestion_out_pch ges left outer join reportes.dbo.PCH_dic_gestion AS g ON ges.gestion = g.gestion and ges.tipo_gestion = g.tipo_gestion where nombre_base in ('BASE_TCA JULIO 2017 GXC 15000','BASE MT MAYO II PRI TC GXC 0020','MT JULIO PRI TC GXC 026','BASE_SMS_JULIO_2017','Base_CALIFICACION REACTIVACION CAMPANA 01_JUN17_2') and last in (1,3)" queryout C:\pichincha_datos\OUTBND_GXC.txt -S 172.16.134.9\reportes -U easy -P easy -c -S PPM-ALTDB -C
c:
cd C:\pichincha_datos
set anio=%date:~10,4%
set dia=%date:~7,2%
set mes=%date:~4,2%
ren OUTBND_GXC.txt OUTBND_GXC_%anio%_%mes%_%dia%.txt
set FECHA= %date%
set FECHA=%FECHA:/=%
set FECHA=%FECHA: =%
set FECHA=%FECHA::=%
set FECHA=%FECHA:,=%
set HORA= %time%
set HORA=%HORA:/=%
set HORA=%HORA: =%
set HORA=%HORA::=%
set HORA=%HORA:,=%
sendEmail -f [email protected] -t [email protected] smtp.gmail.com:587 -u "Gestion Pichincha" -m "Envio la Gestion del mes de campanas Pichincha" -a OUTBND_GXC_%anio%_%mes%_%dia%.txt -v -xu [email protected] -xp xxxxxxxxxx -o tls=yes
move OUTBND_GXC_%anio%_%mes%_%dia%.txt C:\pichincha_datos\historico\
Echo Fecho de finalizacion %DATE% %TIME%.
Echo -------------------------------------------------------------------------------------------------------------
exit
Pero el problema es que sendmail.exe no me acepta el uso de variables dentro de su estructura; habra alguna forma de setear toda esta linea en una variable, ¿para luego ejecutarla y poder asi generar la linea con el nombre del archivo dinamicamente?