11.7 Otros programas de FTP en modo texto

Imagen de ElSanto

Pese a la gran versatilidad que tiene ftp, en Linux se disponen de algunos programas que pueden facilitar y acelerar algunas de las funciones de ftp, como ncftp (un cliente de ftp más avanzado que el sencillo ftp) y wget, (un programa que permite descargar ficheros de cualquier recurso WWW).

Ncftp se utiliza de forma similar a ftp, pero con la salvedad de que es capaz de hacer logins automáticos (user anonymous y password email), que permite edición de líneas anteriormente escritas (history de comandos), que dispone de un modo visual (a pantalla completa) y en línea (al estilo ftp), con una barra de estado que nos informará en todo momento de qué hace el programa, que recuerda URLs (si entramos una vez en hyper.unc.edu.es, bastaría en otra conexión especificar "open hyper" o incluso "open hy" para que recuerde la URL completa), y con un comando get algo especial. El get que usa ncftp es capaz de saltarse los ficheros de los que ya disponemos, de coger múltiples ficheros (por ejemplo, get *), de bajar un programa a trozos sin necesidad de reget (mediante get -C nombre_fichero), bajarnos ficheros de X días de antigüedad o menos ( get -n X *.txt ), o incluso la posibilidad de hacer un get recursivo que entre en subdirectorios remotos y que restaure la misma jerarquía de directorios en nuestra máquina, así como los ficheros que contenga (get -R /pub/juegos). Además permite entrar directamente a ftps y directorios. Por ejemplo, en el programa de ftp básico, para entrar en ftp.test.com/pub/linux habría que hacer "ftp ftp.test.com" y luego "cd pub/linux", mientras que con ncftp podemos hacer directamente desde la línea de comandos:

ncftp ftp.test.com/pub/linux

Además ncftp recuerda el último directorio de cada site donde entremos, de modo que la siguiente vez que entremos en, por ejemplo, ftp.test.com apareceremos directamente en pub/linux. Dispone de muchas más funcionalidades, como un cálculo de tiempo esperado de download del fichero (ETA), una barra de progresión de downloads, etc. (para más información, consultar la página man).
Todo ello con un tamaño en disco de 174.000 bytes para la versión 2.4.3 (ncftp-2.4.3-3.i386.rpm), lo que lo hace ideal para bajarse cientos de imágenes de un directorio sin ir una por una, o subir multiples ficheros a una máquina remota (como cuando subimos nuestra página Web a nuestro ISP).

Wget es un programa que hace algo similar a get y reget pero desde la línea de comandos del Linux y que también sirve para direcciones http. La sintaxis de wget es la siguiente:

wget [opciones] dirección_de_Internet

Entre las opciones disponibles las más útiles son:
-r: wget recursivo (entra en directorios y links) -L: sólo entra en los links locales. -c: para bajarse un fichero en varias sesiones o continuar desde donde se quedó si se corta la conexión. Esta opción hace que si existe en el directorio actual un fichero con el mismo nombre que el que se pretende bajar, pero con menor tamaño, wget continue bajando datos sólo desde el final del fichero local (solo los datos que faltan para la finalización del download).

Un par de ejemplos de uso del programa podrían ser:

wget -c ftp.juan.es/pub/programas/netscape.rpm
wget -r ftp.juan.es/pub/fotos/paisajes
wget -rL www.8052.com

El primer ejemplo se bajaría el fichero netscape.rpm directamente al directorio actual, pudiendo cortarlo en cualquier momento con CTRL+C para continuar su download otro dia desde el punto en que se quedó (como reget, NetVampire, etc) utilizando el mismo comando. El segundo ejemplo se bajaría todos los ficheros que hubieran en el directorio pub/fotos/paisajes del ftp especificado, y el tercero se bajaría la web www.8052.com completa (incluyendo fotos, subdirectorios, etc) para poder navegar por ella en el disco duro offline.
Existen multitud de opciones (ver página del manual) que lo hacen indispensable y sumamente útil. Cuenta con un frontend para GTK en modo gráfico (Gwget) por si no nos gusta la línea de comandos, pero en sí wget es un programa ideal cuyo uso está justificado, pues podemos correrlo en diferentes xterm o consolas obteniendo ficheros de Internet a la máxima velocidad posible.

Otro programa bastante interesante y similar a Wget (pero que trabaja en forma de caché-proxy) es WWWoffle, que permite descargar ficheros y páginas Web completas para navegar por ellas después en modo desconectado. También es posible marcarle páginas en modo desconectado para que se las baje cuando conectemos (sin ser necesaria mediación alguna por nuestra parte) de forma transparente al usuario.

Cftp (Comfortable FTP) es otro programa que nos permitirá navegar por el ftp mediante las teclas de los cursores, de forma que pulsando INTRO entraremos en los directorios sobre el que situemos el cursor virtual, o nos bajaremos el fichero sobre el que estemos.

Lftp es un programa al estilo ncftp con multitud de opciones de uso e ideal para la realización de mirrors (hacer una copia exacta de un ftp o de un subdirectorio del mismo) y mirrors inversos (copiar a un ftp el contenido exacto de un subdirectorio local, ideal para subir páginas Web completas con subdirectorios, ya que él mismo detecta qué ficheros locales son más nuevos que los presentes en el ordenador remoto, actualizando éstos). Como características fundamentales tiene: soporte de alias, caché, bookmarks, busqueda de ficheros, mirror (con opciones de continuación, recursión, borrado, etc.) mirror inverso, y sencillos ficheros de configuración.