【发布时间】:2012-10-19 21:32:41
【问题描述】:
我正在使用 lftp 从外部服务器镜像文件,但现在我需要的是在成功下载后重命名源目录(在远程服务器上)。基本上我需要的是在远程服务器列表目录上打开连接,下载所有名称从“todo”开始的目录,即成功后的 todo.20121019,我必须将下载的目录重命名为“done.20121019”。服务器上可能有多个目录。
远程 FTP 服务器仅适用于活动连接。
#!/bin/bash
directories=`lftp -f lftp_script_file.lf |grep done|awk '{print $NF}'`
for i in $directories
do
echo $i //here I get list of directories that should be downloaded and renamed
done
lftp_script_file.lf 只是列出directires:
set ftp:passive-mode false;
open ftp://user:pass$@10.10.10.123
ls my_sub_dir/
有没有办法:
- 打开到 ftp 服务器的连接
- 查找我要下载的目录
- 将这些目录添加到队列并下载
- 重命名远程服务器上的目录
在批处理文件中?
我试图实现的是列出目录,找到有趣的目录,下载并重命名,但我找不到通过 bash 脚本和“设置 ftp:passive-mode false”将目录列表发布到 lftp 的方法。
【问题讨论】:
标签: linux variables queue mirror lftp