shell 获取 ftp服务最新文件的文件

1 篇文章 0 订阅
1 篇文章 0 订阅
#!/bin/bash

# 连上ftp 服务器, 相关的文件列表下载到本地 fileList.txt
ftp -v -n 192.168.20.8<<EOF 
user 用户名 密码
dir /指定目录/*部分文件名*  fileList.txt
bye
EOF

# awk '{print $9}' 用法
# 例如 : -rw-------    1 1002     50       28519125 Jul 22 07:06 package-20210722-1506.tar.gz   
# $9 就是空格分隔后的第9个参数, 也就是 package-20210722-1506.tar.gz 
# 如果只要部分, 则用  awk '{print substr($a, b, c)}'  截取
# sort -r 倒序排序 (别的排序规则 自行百度)
# head -1 取第一行

fileName=$(cat filelist.txt | grep 过滤出来的字符 | awk '{print $9}' | sort -r | head -1)

echo "fileName: $fileName"

cd /opt

wget ftp://192.168.20.8/指定目录/$fileName --ftp-user=用户名 --ftp-password=密码

echo "最新文件下载完毕 : $fileName"

exit 0
在这里插入代码片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值