Linux 性能更好的ftp客户端 lftp 利用详解

[复制链接]
发表于 2025-10-26 16:37:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
简介

LFTP 是一个下令行 FTP 客户端,支持多种文件传输协议,包罗 FTP、FTPS、HTTP、HTTPS和SFTP 。它以其通过镜像、背景利用和脚本支持等特性有用管理复杂传输的本领而闻名。
安装


  • Ubuntu/Debian
  1. sudo apt update
  2. sudo apt install lftp
复制代码

  • CentOS/RHEL/Fedora
  1. sudo yum install lftp
复制代码
常用选项


  • -u:指定用户名和暗码
  • -e:打开毗连后实行下令
  • -f:利用脚本文件实行下令
  • -c:启动 LFTP 并直接运行下令(无需进入交互模式)
  • --parallel:启用多个并行毗连以进步下载/上传速率
  • -p:为 FTP 或 SFTP 服务器设置自界说端口
常用子下令


  • open:打开与服务器的毗连
  • ls
    :列出远程服务器上的文件和目次
  • cd:更改远程服务器上的目次
  • get:从远程服务器下载文件
  • put:将文件上传到远程服务器
  • mget:下载多个文件
  • mput:上传多个文件
  • mirror:镜像(同步)目次
  • exit
    :退出 LFTP 会话
  • set:设置各种 LFTP 选项(比方速率限定)
  • -u username,password:指定用户名和暗码
  • -e "command":毗连后实行单个下令
示例用法

启动 LFTP

只需在终端中输入 lftp
即可启动 LFTP 交互模式
  1. lftp
复制代码
毗连到服务器

利用 open 下令毗连到服务器。实用于任何受支持的协议(FTP、FTPS、SFTP 等)
  1. lftp
  2. open ftp://username:password@hostname
复制代码
示例
  1. lftp
  2. open ftp://user:[email protected]
复制代码
利用SFTP
  1. lftp
  2. sftp://username@hostname
复制代码
具有显式 SSL/TLS 加密的 FTP(FTPS)
  1. lftp
  2. -u username,password -e "set ftp:ssl-allow yes; open ftp://hostname"
复制代码
列出远程服务器上的文件
  1. ls
复制代码
更改目次
  1. cd remote_directory
复制代码
上传文件
  1. put local_file
复制代码
上传多个文件
  1. mput *.txt
复制代码
下载文件
  1. get remote_file
复制代码
下载多个文件
  1. mget *.txt
复制代码
镜像目次


  • 将远程镜像到本地
  1. mirror remote_directory local_directory
复制代码

  • 本地镜像到远程
  1. mirror -R local_directory remote_directory
复制代码

  • 利用附加选项举行镜像
利用 --delete 删除源上不再存在的文件
  1. mirror --delete remote_directory local_directory
复制代码
退出 LFTP
  1. exit
复制代码
背景传输
  1. lftp
  2. -e "get remote_file
  3. &"
复制代码
背景传输多个下令

多个下令用分号隔开
  1. lftp
  2. -e "open ftp://username:password@hostname; get remote_file
  3. ; exit
  4. "
复制代码
在脚本中利用 LFTP
  1. #!/bin/bashlftp
  2. -e "open ftp://username:password@hostname; put local_file
  3. ; get remote_file
  4. ; exit
  5. "
复制代码
设置传输速率
  1. lftp
  2. -e "set net:limit-rate 100000; open ftp://username:password@hostname; get remote_file
  3. ; exit
  4. "
复制代码
递归文件下载
  1. lftp
  2. -e "mirror --reverse --verbose /remote_path /local_path; exit
  3. "
复制代码
并行毗连
  1. lftp
  2. -u username,password -e "set mirror:parallel-transfer-count 5; mirror remote_directory local_directory
  3. ; exit
  4. "
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表