1. Script para carga SFTP
Este script automatiza la transferencia de archivos desde un directorio local a un servidor SFTP remoto utilizando una clave SSH privada para la autenticación.
Instrucciones
Creación del script:
Copia el script de plantilla en tu editor de texto (Notepad, Notepad++, Visual Studio Code, etc.).
Modifica la sección "Variables personalizadas - la única parte a configurar".
@echo offREM === Variables personalizadas - la única parte a configurar ===set LOCAL_DIR=C:\FolderOnYourServer\set ARCHIVE_DIR=C:\ArchiveFolderOnYourServer\set SFTP_DIR=/SFTP_path/set USERNAME=sftp_user.agicapset PRIVATE_KEY=C:\FolderOnYourServer\private_key.ppkset LOG_FILE=C:\FolderOnYourServer\log.logset WINSCP=C:\Program Files (x86)\WinSCP\winscp.comREM === Comprobaciones básicas ===if not exist "%WINSCP%" ( echo Error: WinSCP no está instalado. goto :exit)if not exist "%PRIVATE_KEY%" ( echo Error: Clave privada no encontrada. goto :exit)REM === Ejecución de la transferencia SFTP ===echo. 2> "%LOG_FILE%""%WINSCP%" /log="%LOG_FILE%" /command ^ "open sftp://%USERNAME%@files.agicap.com:2222 -privatekey=""%PRIVATE_KEY%"" -hostkey=""*""" ^ "put -transfer=auto ""%LOCAL_DIR%\*"" ""%SFTP_DIR%""" ^ "exit"REM === Archivado posterior a la transferencia ===set WINSCP_RESULT=%ERRORLEVEL%if %WINSCP_RESULT% equ 0 ( move /Y "%LOCAL_DIR%\*" "%ARCHIVE_DIR%") else ( echo "La transferencia falló, revisa el archivo de log: %LOG_FILE%"):exittimeout /t 10
Personalización:
LOCAL_DIR : Directorio en tu servidor que contiene los archivos a enviar.
ARCHIVE_DIR : Directorio en tu servidor para archivar los archivos enviados.
SFTP_DIR : Ruta de destino en el servidor SFTP (pregunta a Agicap).
USERNAME : Usuario proporcionado por Agicap.
PRIVATE_KEY : Ruta a la clave privada SSH.
LOG_FILE : Archivo de log para registrar los detalles de la ejecución.
Guardar y ejecutar:
Guarda el archivo con extensión .bat (ejemplo: sftp_upload_script.bat).
Haz doble clic en el archivo para ejecutar el script y verifica que funcione como esperas.
2. Programación del script
Después de crear y validar tu script, puedes configurar la ejecución automática usando el Programador de tareas de Windows. Esta guía explica cómo configurar tareas programadas para tus scripts.
Estructura de directorios
Organización de archivos recomendada:
C:\Agicap\ ├── Logs\ (para archivos de log) ├── Exports\ (para archivos pendientes de transferencia) ├── Archives\ (para copias de seguridad de archivos transferidos) ├── Scripts\ (coloca aquí tus scripts bat) ├── Keys\ (coloca aquí tus claves privadas y públicas)
Configuración de la ejecución automática de tareas
Abrir el Programador de tareas
Busca "Programador de tareas" en el menú Inicio de Windows
Lanza la aplicación
Crear una nueva tarea programada
En el menú Acción, selecciona "Crear tarea"
Configurar los ajustes de la tarea
Información básica
Asigna un nombre y descripción significativos
Configuración de la programación
Selecciona frecuencia "Diaria"
Elige la hora de inicio deseada (por ejemplo, 5:30 AM)
Confirma que esté seleccionado "Repetir cada 1 día"
Configuración de la acción
Elige "Iniciar un programa"
Busca y selecciona tu archivo de script
Finalizar configuración
Revisa todos los detalles de configuración
Haz clic en "Finalizar" para activar la programación
Tu tarea aparecerá ahora en la biblioteca del Programador de tareas donde podrás modificar los ajustes según sea necesario
