La automatización de tareas vía FTP dentro de un script, puede resultar muy útil para scripts de copias de seguridad por ejemplo. Vamos a ver la forma de hacerlo y las posibilidades que nos ofrece.
La sintaxis básica para hacer la llamada a FTP dentro de un script en bash es la siguiente:
ftp -inv direccion_ip<<FINFTP comando1 comando2 comando3 FINFTP
Comenzamos explicando los parámetros que pasamos al binario FTP, i
sirve para desactivar el prompt interactivo, n
sirve para impedir que se use la auto-autenticación, podéis quitarlo si vais a usar el acceso automático a través de .netrc, finalmente v
es para verbose.
Posteriormente, dentro de la llamada a FTP ya se trata de añadir los comandos que cada uno necesite, en el siguiente ejemplo nos conectamos con usuario test y clave t3st al ftp 192.168.0.100 y subimos dos ficheros desde la carpeta local /home/local hacia la carpeta remota /.
#!/bin/bash ftp -inv 192.168.0.100<<FINFTP user test t3st binary lcd /home/local cd /home/download put fichero1.txt put fichero2.txt bye FINFTP