Quiero añadir un comando FTP a mi crontab para descargar automáticamente un archivo. ¿Cómo puedo hacer esto?
Respuestas
¿Demasiados anuncios?La manera más fácil de hacerlo es con wget. Por ejemplo:
Ian-Cs-MacBook-Pro:ianc ian$ wget ftp://gnjilux.cc.fer.hr/welcome.msg
--2011-08-02 19:48:00-- ftp://gnjilux.cc.fer.hr/welcome.msg
=> `welcome.msg'
Resolving gnjilux.cc.fer.hr... 161.53.74.67
Connecting to gnjilux.cc.fer.hr|161.53.74.67|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done. ==> PWD ... done.
==> TYPE I ... done. ==> CWD not needed.
==> SIZE welcome.msg ... 1462
==> PASV ... done. ==> RETR welcome.msg ... done.
Length: 1462 (1.4K) (unauthoritative)
100% [======================================================================================================================================================================================================================================>] 1,462 --.-K/s in 0s
2011-08-02 19:48:03 (63.4 MB/s) - `welcome.msg' saved [1462]
wget
admite opciones para proporcionar un nombre de usuario (--user=usuario) y la contraseña (--password=contraseña) si el acceso FTP anónimo no está disponible. Y un --quiet modo así es cron
-friendly y no llenar tu bandeja de entrada local sin mensajes para el éxito de descargas.
Usted puede usar curl, que está disponible en Mac OSX ya y puede que no-ftp anónimo) el uso de los inicios de sesión se almacenan en .netrc (por lo que la contraseña no se muestra en un ps de la lista)
Plain vanilla ftp anónimo
curl ftp://your.server.name/path/to/file.tar.gz > ~you/Downloads/file.tar.gz
El uso de .netrc
curl --netrc ftp://your.server.name/path/to/file.tar.gz > ~you/Downloads/file.tar.gz
Especificar usuario/contraseña directamente (visible en ps después)
curl --user "user:password" ftp://your.server.name/path/to/file.tar.gz > ~you/Downloads/file.tar.gz