Ho dovuto schedulare un batch per un trasferimento FTP.
Il batch crea un file cmd.ftp, contenente i comandi ftp, e poi avvia
ftp.exe usando il file di comandi cmd.ftp.
Quando eseguo il file batch in modalita interattiva funziona tutto regolarmente.
Quando lo eseguo come operazione schedulata richiamando direttamente il batch non funziona.
Il batch si chiama TrasferimentoFTP.bat
Non viene creato il cmd.ftp.
Soluzione:
richiamare il batch tramite cmd.exe
c:\Windows\System32\cmd.exe /c C:\Sistemi\aep\expavvisi\TrasferimentoFTP.bat
================================================================================================================================
EXPORT.BAT
set datetime=%date:~6,4%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2%
copy C:\temp\ExpAvvisi\Clienti.csv C:\temp\ExpAvvisi\Clienti_%datetime%.csv
c:\Windows\System32\cmd.exe /c C:\Sistemi\aep\expavvisi\TrasferimentoFTP.bat C:\sistemi\AeP\ExpAvvisi\Clienti_%datetime%.csv
================================================================================================================================
================================================================================================================================
TrasferimentoFTP.bat
ECHO OFF
REM cd C:\temp\ExpAvvisi
cd /d C:\temp\ExpAvvisi - l'opzione d imposta l'home drive per il batch
echo user userftp password > cmd.ftp
echo put %1% >> cmd.ftp - esiste una parte di batch
echo quit >> cmd.ftp
cd %1%
echo --------------------------
echo Trasferimento FTP avviato
echo --------------------------
REM ftp -n -s:cmd.ftp ftp.papallo.org
echo ---------
echo F I N E
echo ---------
exit
================================================================================================================================
Nessun commento:
Posta un commento