如何在命令行中使用 ftp 命令上传和下载文件

简介:

如何在命令行中使用 ftp 命令上传和下载文件



本文中,介绍在 Linux shell 中如何使用 ftp 命令。包括如何连接 FTP 服务器,上传或下载文件以及创建文件夹。尽管现在有许多不错的 FTP 桌面应用,但是在服务器、SSH、远程会话中命令行 ftp 命令还是有很多应用的。比如。需要服务器从 ftp 仓库拉取备份。

步骤 1: 建立 FTP 连接

想要连接 FTP 服务器,在命令上中先输入ftp然后空格跟上 FTP 服务器的域名 'domain.com' 或者 IP 地址

例如:

 
 
  1. ftp domain.com
  2. ftp 192.168.0.1
  3. ftp user@ftpdomain.com

注意: 本例中使用匿名服务器。

替换下面例子中 IP 或域名为你的服务器地址。

FTP 登录

步骤 2: 使用用户名密码登录

绝大多数的 FTP 服务器是使用密码保护的,因此这些 FTP 服务器会询问'username'和'password'.

如果你连接到被称作匿名 FTP 服务器(LCTT 译注:即,并不需要你有真实的用户信息即可使用的 FTP 服务器称之为匿名 FTP 服务器),可以尝试anonymous作为用户名以及使用空密码:

 
 
  1. Name: anonymous
  2. Password:

之后,终端会返回如下的信息:

 
 
  1. 230 Login successful.
  2. Remote system type is UNIX.
  3. Using binary mode to transfer files.
  4. ftp>

登录成功。

FTP 登录成功

步骤 3: 目录操作

FTP 命令可以列出、移动和创建文件夹,如同我们在本地使用我们的电脑一样。ls可以打印目录列表,cd可以改变目录,mkdir可以创建文件夹。

使用安全设置列出目录

 
 
  1. ftp> ls

服务器将返回:

 
 
  1. 200 PORT command successful. Consider using PASV.
  2. 150 Here comes the directory listing.
  3. directory list
  4. ....
  5. ....
  6. 226 Directory send OK.

打印目录

改变目录:

改变目录可以输入:

 
 
  1. ftp> cd directory

服务器将会返回:

 
 
  1. 250 Directory succesfully changed.



步骤 4: 使用 FTP 下载文件

在下载一个文件之前,我们首先需要使用lcd命令设定本地接受目录位置。

 
 
  1. lcd /home/user/yourdirectoryname

如果你不指定下载目录,文件将会下载到你登录 FTP 时候的工作目录。

现在,我们可以使用命令 get 来下载文件,比如:

 
 
  1. get file

文件会保存在使用lcd命令设置的目录位置。

服务器返回消息:

 
 
  1. local: file remote: file
  2. 200 PORT command successful. Consider using PASV.
  3. 150 Opening BINARY mode data connection for file (xxx bytes).
  4. 226 File send OK.
  5. XXX bytes received in x.xx secs (x.xxx MB/s).

使用FTP下载文件

下载多个文件可以使用通配符及 mget 命令。例如,下面这个例子我打算下载所有以 .xls 结尾的文件。

 
 
  1. mget *.xls

步骤 5: 使用 FTP 上传文件

完成 FTP 连接后,FTP 同样可以上传文件

使用 put命令上传文件:

 
 
  1. put file

当文件不再当前本地目录下的时候,可以使用绝对路径:

 
 
  1. put /path/file

同样,可以上传多个文件:

 
 
  1. mput *.xls

步骤 6: 关闭 FTP 连接

完成FTP工作后,为了安全起见需要关闭连接。有三个命令可以关闭连接:

 
 
  1. bye
  2. exit
  3. quit

任意一个命令可以断开FTP服务器连接并返回:

 
 
  1. 221 Goodbye

需要更多帮助,在使用 ftp 命令连接到服务器后,可以使用help获得更多帮助。


本文来自云栖社区合作伙伴“Linux中国”

原文发布时间为:2013-04-02.


相关文章
|
28天前
|
存储 安全 Shell
⭐⭐【Shell 命令集合 文件传输 】Linux ftp工具 使用指南
⭐⭐【Shell 命令集合 文件传输 】Linux ftp工具 使用指南
40 0
|
28天前
|
存储 Shell Linux
【Shell 命令集合 文件传输 FTP客户端工具】Linux ncftp 命令使用指南
【Shell 命令集合 文件传输 FTP客户端工具】Linux ncftp 命令使用指南
35 0
|
3月前
|
安全 算法 网络协议
【Linux】文件服务FTP(File Transfer Protocol)
【Linux】文件服务FTP(File Transfer Protocol)
51 0
|
4月前
|
开发框架 Java 数据处理
多sheet页导出 + FTP上传文件实战
多sheet页导出 + FTP上传文件实战
|
4月前
|
Ubuntu
百度搜索:蓝易云【ubuntu FTP匿名登录及相关命令】
使用这些命令,你可以在Ubuntu上进行FTP匿名登录,并执行相应的FTP操作,希望这个教程能够帮助你进行Ubuntu上的FTP匿名登录。
55 0
|
1月前
|
Shell Python Windows
通过Python实现win11环境下FTP的上传与下载
通过Python实现win11环境下FTP的上传与下载
|
1月前
|
监控 安全 测试技术
使用pyftpdlib组件实现FTP文件共享
使用pyftpdlib组件实现FTP文件共享
28 0
|
2月前
|
Java
java上传、下载、预览、删除ftp服务器上的文件
java上传、下载、预览、删除ftp服务器上的文件
|
3月前
|
存储 数据处理
Dataphin集成任务支持自定义FTP标记完成文件内容(V3.14)
在文件传输的场景中,标记完成文件(有时也被称为标档文件)作为一种重要的确认机制被广泛应用。这一机制通过创建特定的“传输完成标识文件”,用于明确指示数据文件已成功完成全量传输,并达到可以进行下一步业务处理的状态,从而有效防止了基于不完整数据流的错误操作。
|
4月前
|
API 分布式数据库 数据安全/隐私保护
C/C++ 实现FTP文件上传下载
FTP(文件传输协议)是一种用于在网络上传输文件的标准协议。它属于因特网标准化的协议族之一,为文件的上传、下载和文件管理提供了一种标准化的方法,在Windows系统中操作FTP上传下载可以使用WinINet库,WinINet(Windows Internet)库是 Windows 操作系统中的一个网络 API 库,用于访问 Internet 上的资源。它提供了一组函数,使开发人员能够创建网络应用程序,例如通过 HTTP 协议下载文件,发送 HTTP 请求,处理 cookie 等,本章将通过使用WinInet所提供的接口实现FTP文件上传下载功能,使得用户可以通过代码的方式上传或下载文件与FTP
73 1
C/C++ 实现FTP文件上传下载