linux lftp lftpget 命令简介

本文详细介绍lFTP的使用方法,包括登录、解决中文乱码、文件查找、下载与上传操作、设置被动模式及自动上传脚本编写。适用于需要高效管理FTP服务器文件的用户。

lftp

使用lftp相比使用ftp的优势较多,可以显示上传下载的百分比进度以及可以上传下载文件夹。

1、登录ftp
代码:
lftp 用户名:密码@ftp地址:传送端口(默认21)
用法
(1)lftp username:password@127.0.0.1:21
(2)lftp username@127.0.0.1 回车     ##默认21端口 回车后输入密码
(3)lftp 127.0.0.1 回车   ##回车后 login 登录
(4)lftp 回车 --> open 127.0.0.1 --> login 登录

2、lftp中文乱码问题
登录后看到的都是中文乱码(因为一般本地都是utf-8的编码),怎么半呢,用 set 命令来解决

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文件

附1: ls第二次读取的是本地缓存,可以用 rels 代替 ls 或者catch off / catch on 来开关catch,catch flush清空本地catch
附2: 浏览本地目录的命令可用 !ls , 如 !ls /usr/local/bin/


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     ##同下载
mput *.txt     ##同下载
mirror -R aaa/ ##同下载


6、设置被动/非被动模式

set ftp:passive-mode 1 ## 1 被动 0非主动

 

7.自动上传脚本

#!/bin/bash
echo -e "\nScript start at \033[43;35m `date "+%H:%M:%S"` \033[0m"
echo -e "\033[1;34m-----------------------------------------------------------------------\033[0m"
cd /root/upload ; rm -fr /root/upload/*
git clone git@10.35.33.29:xiaoban/server-api/xiaoban-server.git
mv /root/upload/xiaoban-server/* /root/upload/ ; rm -fr /root/upload/xiaoban-server
tar zcvf code.tar.gz ./* >/dev/null

lftp << EOF
open ftp://xiaoban:xiaoban@2018@ftp.wjoyxt.ren
cd
put /root/upload/code.tar.gz
close 
bye
EOF
rm -fr /root/upload/*
echo -e "\033[1;34m-----------------------------------------------------------------------\033[0m"
echo -e "Script  end  at \033[43;35m `date "+%H:%M:%S"` \033[0m \n "


8.lftp上传和下载文件夹

下载:mirror rdir ldir  // 将远程目录rdir下载到本地目录ldir

上传:mirror -R ldir rdir  // 将本地目录ldir上传到远程目录rdir

 

lftpget

调用lftp指令下载指定的文件

语法

lftpget(选项)(参数)

选项

-c:继续先前的下载;
-d:输出调试信息;
-v:输出详细信息。

参数

文件:指定要下载的文件,文件必须是合法的URL路径。

实例

lftpget -c ftp://ftpusername:ftppassword@192.168.1.2/test/test.tar.gz

 

 

 

<think> 首先,用户的问题是:“我想查找在Linux系统中重启lftp命令 请问Linux系统重启lftp命令”。这是一个关于Linux命令的查询。 回顾系统级指令: - 所有行内数学表达式必须使用$...$格式。 - 独立公式使用$$...$$。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识。 用户提到了参考站内引用: - 引用[1]:展示了一个lftp会话示例,包括访问FTP服务器、查看文件、下载文件等。提到了lftp 服务器IP、ls、get命令。 - 引用[2]:列出了常用Linux命令,如rz、hadoop checknative、chown、netstat、lsof、scp等。 用户说:“上述引用仅供参考,并不是用户真正的需求,请尽可能多的参考用户上一次的问题和你的回答。” 用户上一次的问题是什么?在这个对话中,这是第一个用户消息,所以没有“上一次的问题”。先前的系统消息是示例和指令,没有用户历史。 在这个上下文,用户直接问了这个新问题。所以,我需要专注于当前问题:重启lftp命令lftp是一个文件传输程序(FTP、SFTP等客户端)。它不是像守护进程那样的服务;它是一个交互式shell或命令行工具。所以,没有直接的“重启”命令。用户可能意味着如何重新启动lftp会话或如何退出并重新进入lftp。 在Linux中,lftp通常通过运行lftp命令启动一个交互式会话。如果你想重启它,你可能需要退出当前会话然后重新运行命令。 常见操作: - 启动lftp:在终端输入 lftp server-ip 或 lftp。 - 退出lftp:在lftp提示符下输入 exit 或 quit。 - 重启:手动退出然后重新启动。 lftp没有内置的“重启”命令。用户可能混淆了重启服务(如守护进程)和重启客户端程序。 基于引用: - 引用[1]展示了如何启动lftp和基本命令。 - 引用[2]是关于其他Linux命令,没有直接提到lftp重启。 所以,我应该解释如何重新启动lftp会话。 回答结构: - 使用中文。 - 清晰、真实可靠。 - 在回答中,如果需要引用,添加引用标识。但这里可能不需要直接从引用中复制,因为引用中没有特定重启命令。 - 用户引用了[^1]和[^2],所以我可以在适当的地方引用它们。 - 最后,生成相关问题。 核心回答: - 解释lftp没有专门的“重启”命令。 - 建议退出当前会话并重新启动。 - 提供命令行示例。 例如: 在Linux中启动lftp会话后,如果需要重启,可以: 1. 在lftp提示符下输入 exit 或 quit 以退出当前会话。 2. 然后重新运行 lftp 命令来启动新的会话。 例如: ```bash $ lftp ftp.example.com # 启动会话 lftp ftp.example.com:~> quit # 退出会话 $ lftp ftp.example.com # 重新启动 ``` 如果需要自动化,可以通过shell脚本实现。 引用:由于引用[1]展示了lftp的使用,我可以引用它作为背景:[^1] 生成相关问题: 基于当前主题,相关问题可能包括: 1. 如何在lftp中传输文件? 2. lftp的其他常用命令是什么? 3. 如何配置lftp的默认设置?等等。 确保回答真实可靠。 最终回答结构: - 直接回答用户问题。 - 提供代码或命令示例(如果适用)。 - 添加引用。 - 生成相关问题。 </think> ### Linux系统中重启lftp会话的方法 在Linux系统中,lftp是一个命令行FTP/FTPS/SFTP客户端工具,它不是后台守护进程,而是交互式会话程序。因此,没有专门的“重启命令”来直接重启lftp服务。重启lftp通常指**退出当前会话后重新启动一个新会话**。以下是详细步骤和命令: 1. **退出当前lftp会话**: - 在lftp的交互式提示符下(例如 `lftp :~>`),输入 `quit` 或 `exit` 命令来结束当前会话。 - 示例: ```bash lftp ftp.example.com:~> quit # 输入quit退出 ``` 退出后,终端会返回到系统Shell提示符(如 `$`)。 2. **重新启动lftp会话**: - 在系统Shell中,重新运行 `lftp` 命令,指定服务器IP或域名来启动新会话。 - 示例(基于引用[1]的格式): ```bash $ lftp 192.168.180.188 # 重新连接服务器 lftp 192.168.180.188:~> ls # 查看文件列表(可选) ``` 这样即可实现“重启”的效果。 **关键说明**: - 如果lftp因错误卡住,可能需要先强制结束进程: - 在系统Shell中,使用 `Ctrl + C` 中断当前会话,或运行 `killall lftp` 终止所有lftp进程(需权限)[^1][^2]。 - lftp本身没有内置重启机制,重启依赖手动操作或脚本封装(例如写一个Shell脚本调用 `lftp` 命令)。 - 引用中提到的基本命令(如 `ls`、`get`)适用于会话操作,但未涉及重启功能[^1]。 **自动化建议**: 对于频繁重启的需求,可以创建一个简单的脚本(例如 `restart_lftp.sh`): ```bash #!/bin/bash killall lftp 2>/dev/null # 终止现有lftp进程 lftp ftp.example.com # 启动新会话 ``` 运行脚本前确保其可执行权限:`chmod +x restart_lftp.sh`。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值