Obteniendo "Host "=" no existe" al intentar automatizar transferencias de archivos usando el script WinSCP

Obteniendo "Host "=" no existe" al intentar automatizar transferencias de archivos usando el script WinSCP

Estoy intentando automatizar algunas transferencias de archivos mediante secuencias de comandos WinSCP. Esto es lo que tengo.

option echo off
option batch on
option confirm off
open abcde:[email protected]

lcd "t:\"

put -nopermissions -nopreservetime "test.txt" test.txt

exit

De hecho, puedo acceder a la línea de comandos y ejecutar los comandos open, lcdy putsin ningún problema. Cuando uso el script, recibo este error:

Opening session using command-line parameter in scripting is deprecated. Use 'open' command instead.
Searching for host...
Host "=" does not exist.

Superé el obstáculo de la conexión poniendo el comando de conexión en el archivo por lotes extrayendo el script.

Winscp.com abcde:[email protected]

¿Cómo llamo al script para ejecutar el resto de las tareas?

Respuesta1

Necesitas guardar tusecuencia de comandos WinSCPa un archivo (por ejemplo script.txt).

Y luego haga que WinSCP ejecute el script usando/script=interruptor de línea de comando, como:

winscp.com /log=winscp.log /script=script.txt

Deberías empezar con unguía para automatizar transferencias de archivos SFTP usando WinSCP.

Respuesta2

Esto funcionó para mí. Guardé el siguiente texto como archivo .bat y lo ejecuté.

echo off
WinScp /ini=nul /command "open [email protected] - 
privatekey=D:\PostgresXL.ppk" "move_files_or_do_something" "exit"

información relacionada