Comandos FTP: referencia de cliente y protocolo

Todos los comandos FTP en un solo lugar: los comandos de los clientes de línea de comandos que escribes en ftp.exe de Windows, en macOS o en Linux (get, put, mget, bye), y los comandos brutos del protocolo RFC 959 a los que se traducen en la red.

Actualizado en julio de 2026

Comandos del cliente FTP de línea de comandos

Estos comandos funcionan en los clientes FTP interactivos incluidos en Windows (ftp.exe), macOS y Linux. Inicia una sesión con ftp nombrehost (o con open nombrehost desde el símbolo ftp>) y después usa los comandos de abajo. Para una guía completa en Windows, con scripts incluidos, consulta FTP desde la línea de comandos en Windows.

Sesión y conexión

ComandoQué haceEjemplo
openConecta con un servidor FTP (pide nombre de usuario y contraseña).open ftp.example.com
userVuelve a iniciar sesión, o lo hace como otro usuario, en la conexión abierta.user alice
close / disconnectTermina la conexión con el servidor pero no cierra el programa FTP.close
bye / quitCierra la conexión y sale del programa FTP.bye
statusMuestra los ajustes de la sesión actual (modo, tipo, conmutadores).status
!Pasa al intérprete de comandos local; escribe exit para volver a ftp>.!dir

Descargar y subir

ComandoQué haceEjemplo
get / recvDescarga un archivo del servidor.get report.pdf
put / sendSube un archivo al servidor.put backup.zip
mgetDescarga varios archivos (se admiten comodines).mget *.log
mputSube varios archivos (se admiten comodines).mput *.html
appendAñade un archivo local al final de un archivo del servidor.append part2.txt log.txt
deleteElimina un archivo del servidor.delete old.bak
mdeleteElimina varios archivos del servidor (se admiten comodines).mdelete *.tmp
renameCambia el nombre de un archivo del servidor.rename a.txt b.txt

Explorar directorios

ComandoQué haceEjemplo
dir / lsLista los archivos del directorio remoto actual.dir
cdCambia el directorio remoto.cd /public_html
lcdCambia el directorio local que se usa para las transferencias.lcd C:\Downloads
pwdMuestra el directorio remoto actual.pwd
mkdirCrea un directorio en el servidor.mkdir images
rmdirElimina un directorio vacío del servidor.rmdir old-site

Ajustes de transferencia y conmutadores

ComandoQué haceEjemplo
binaryCambia al modo binario (imagen): úsalo para archivos zip, imágenes, ejecutables y medios. Actívalo siempre antes de descargar archivos que no sean de texto.binary
asciiCambia al modo de texto ASCII (conversión de fin de línea). Es el valor predeterminado en muchos clientes.ascii
promptActiva o desactiva la confirmación por archivo en mget/mput/mdelete.prompt
hashImprime una # por cada bloque transferido: una barra de progreso de andar por casa.hash
verboseActiva o desactiva la visualización de las respuestas del servidor.verbose
literal / quoteEnvía un comando bruto del protocolo (ver la tabla de abajo) directamente al servidor.literal SYST
remotehelpPregunta al servidor qué comandos de protocolo admite.remotehelp
help / ?Lista los comandos del cliente, o explica uno de ellos.help mget

Una sesión típica

C:\> ftp ftp.example.com
Connected to ftp.example.com.
User: alice
Password: ********
ftp> binary
200 Type set to I.
ftp> cd /backups
250 CWD command successful.
ftp> hash
Hash mark printing On.
ftp> get site-backup.zip
226 Transfer complete.
ftp> mput *.log
mput access.log? y
226 Transfer complete.
ftp> bye
221 Goodbye.

¿Trabajas a través de SSH? El cliente sftp de OpenSSH usa un conjunto de comandos parecido pero distinto: consulta la referencia de comandos SFTP. Y si el servidor rechaza la conexión por completo, descarta primero los problemas de red con el probador de conexión FTP.

Comandos brutos del protocolo FTP (RFC 959)

Son los comandos que los clientes FTP envían realmente por la conexión de control: útiles al leer los registros del servidor, al depurar con literal/quote o al implementar FTP tú mismo. Busca o filtra por categoría.

Sobre los comandos FTP

El cliente envía los comandos del protocolo FTP al servidor por la conexión de control (el puerto 21 de forma predeterminada). El servidor responde con un código de estado de tres dígitos. El protocolo básico está definido en la RFC 959, y sus extensiones en las RFC 2228, 2389, 2640, 3659 y 4217.

¿Buscas el significado de los códigos de respuesta del servidor? Consulta la herramienta Búsqueda de códigos de respuesta FTP.

Preguntas frecuentes

¿ftp.exe sigue incluido en Windows 11?

Sí. El clásico cliente FTP de línea de comandos viene con Windows 11 y Windows 10: abre el Símbolo del sistema o PowerShell y escribe ftp para iniciarlo. Solo admite FTP sin cifrar, así que no puede conectarse a servidores SFTP ni FTPS.

¿Por qué falla ftp.exe detrás de un cortafuegos o un router?

El ftp.exe de Windows solo admite el modo activo, en el que el servidor se conecta de vuelta a tu PC en cada transferencia de datos. La mayoría de los routers domésticos y los cortafuegos corporativos bloquean esas conexiones entrantes, por lo que los listados de directorios y las transferencias se quedan colgados tras el inicio de sesión. Los clientes que admiten el modo pasivo (PASV), es decir, prácticamente todos los clientes FTP gráficos, evitan el problema.

¿Cuál es la diferencia entre los comandos del cliente FTP y los comandos del protocolo FTP?

Los comandos de cliente como get, put, mget y bye son los que escribes en un programa FTP de línea de comandos. El programa los traduce a los comandos brutos del protocolo (RETR, STOR, PASV, QUIT) definidos en la RFC 959, que son los que realmente viajan hasta el servidor. Por ejemplo, escribir get report.pdf envía en segundo plano TYPE I, PASV o PORT y RETR report.pdf.

¿Puede ftp.exe conectarse a servidores SFTP o FTPS?

No. El ftp.exe de Windows solo habla FTP sin cifrar. Para SFTP necesitas el comando sftp de OpenSSH (también integrado en Windows 10 y 11) o un cliente que lo admita. Para FTPS (FTP sobre TLS) necesitas un cliente con TLS explícito o implícito: ftp.exe no tiene ninguno de los dos.

¿Cómo automatizo transferencias FTP en Windows?

Pon un comando por línea en un archivo de texto y ejecuta ftp -s:commands.txt nombrehost. El archivo suele empezar con el nombre de usuario y la contraseña en líneas separadas, seguidos de comandos de transferencia como binary, get o put, y finalmente bye. Ten en cuenta que la contraseña se guarda en texto plano y que la conexión no está cifrada: para tareas programadas o desatendidas es mucho mejor una herramienta con soporte de SFTP/FTPS y un planificador de verdad.

¿Prefieres no memorizar comandos?

FTPie es un cliente FTP y FTPS moderno para Windows con transferencias por arrastrar y soltar, un modo pasivo que atraviesa los cortafuegos sin configuración, y SFTP, WebDAV y más de 10 servicios en la nube en la misma aplicación: gratis hasta 3 conexiones de servidor.

Descargar FTPie gratis