Linux文件传输FTP命令详解
首先需要下载ftp客户端工具
yum install -y ftp lftp
语法
ftp(选项)(参数)
选项
-d 启动调试模式
-u 关闭自动认证
-e 不记录历史指令
-i 关闭交互模式
-x 在成功认证之后,协商密钥
-n 关闭自动登录功能
-p 传输文件模式为被动模式
-v 程序运行时,显示详细的处理信息
-k realm 使用Kerberos v4认证时,从realm中得到信息
host FTP服务器的主机名/IP地址
参数
主机:指定要连接的FTP服务器的主机名或ip地址。
常用命令
ls 显示服务器上的目录
get 从服务器下载指定文件到客户端
put 从客户端传送指定文件到服务器
open 连接ftp服务器
quit 断开连接并退出ftp服务器
cd directory 改变服务器的当前目录为directory
lcd directory 改变本地的当前目录为directory
bye 退出ftp命令状态
ascii 设置文件传输方式为ASCII模式
binary 设置文件传输方式为二进制模式
! 执行本地主机命令
cd 切换远端ftp服务器上的目录
cdup 上一层目录
close 在不结束ftp进程的情况下,关闭与ftp服务器的连接
delete 删除远端ftp服务器上的文件
get 下载
hash 显示#表示下载进度
mdelete 删除文件,模糊匹配
mget 下载文件,模糊匹配
mput 上传文件,模糊匹配
mkdir 在远端ftp服务器上,建立文件夹
newer 下载时,检测是不是新文件
prompt 关闭交互模式
put 上传
pwd 显示当前目录
详解
1、连接ftp服务器
① ftp 192.168.1.1 21(默认端口可以不写,修改了端口的话就需要在IP后面空一格写端口。)
服务器询问你用户名和密码,分别输入用户名和相应密码,待认证通过即可。
② lftp username:password@192.168.1.1:21 回车
③ lftp username@127.0.0.1:21 回车 --> 回车后输入密码
④ lftp 127.0.0.1 21 回车 --> login username password 登录
⑤ lftp 回车 --> open 127.0.0.1 21 --> login username password 登录
2、lftp中文乱码问题
set ftp:charset gbk(或者 gb2312 或 utf-8) ##设置ftp端的编码格式
set file:charset utf-8 (...同上) ##设置本地编码格式
附:set命令的技巧 (1)输入set 查看已经设置好的命令 (2)set -a 查看所有可以设置的命令清晰网
3、查找ftp端文件
ls *.txt ##查找当前目录下的所有txt文件
ls ./123/ ##列出123目录下所有文件
find . -name "*.txt" ##递归查找站点上所有的txt文件
find ./xx -name "*.txt" ##查找xx目录下所有的txt文件
4、下载文件
下载文件之前要先设置好本地的目录,用来存放下载的文件
lcd /home/123/web ##设置本地存放目录 默认为 /home/usr
get 123.txt ##下载123.txt文件到 /home/123/web 中
get -c 123.txt ##断点续传下载
mget *.txt ##批量下载所有txt文件
mget -c *.txt ##断点续传
mget -c ./123/aaa/*.txt ##断点续传、批量下载ftp端aaa目录下的所有txt文件
pget -c -n 10 file.dat ##以最多10个线程以允许断点续传的方式下载file.dat,可以通过设置 set pget:default-n 5 的值而使用默认值。
mirror aaa/ ##将aaa目录整个的下载下来,子目录也会自动复制 本地自动建立目录
5、上传文件
put 123.txt ##将本地123.txt文件传送至远端ftp服务器中。
mput /usr/local/*.txt /usr/your/ ##把本地/usr/local/目录下所有txt文件上传到ftp服务器/usr/your/目录下,注意:
mput命令可能会有上传确认提示,必须要输入yes回车才能成功,关闭ftp中mput的上传确认提示:prompt
mirror -R aaa/ ##同下载
6、断开连接
ftp> bye