You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用curl下载远程服务器上最新创建的文件

使用curl下载远程服务器上的最新文件(按创建时间)

根据你给出的文件名规律,文件名中包含明确的时间戳(格式为yyyyMMdd.HHmmss),可以通过以下两种方式实现下载最新文件:

方式一:远程服务器支持目录列表(推荐)

如果远程服务器(如Apache/Nginx)开启了目录浏览功能,可先获取目录内的文件列表,筛选出目标文件并按时间戳排序,最后下载最新的那个:

# 1. 获取最新的目标jar文件名
LATEST_FILE=$(curl -s "http://你的远程服务器地址/目标目录/" | grep -o "user-producer-info-etl-2\.0\.0-[0-9]\+\.[0-9]\+-[0-9]\+-exec\.jar" | sort -r | head -n 1)

# 2. 下载该文件(-O 参数表示保留原文件名)
curl -O "http://你的远程服务器地址/目标目录/$LATEST_FILE"

命令解释:

  • curl -s:静默请求目录,不输出多余的进度或错误信息
  • grep -o:仅提取匹配命名规则的jar文件名
  • sort -r:对文件名按时间戳倒序排序,最新的文件排在最前
  • head -n 1:取排序后的第一个文件,即最新文件

方式二:远程服务器不支持目录列表(仅当知道时间戳规律时可用)

如果无法获取目录列表,且你清楚文件的时间戳生成规则(比如每日固定时间构建),可以尝试生成最近的时间戳拼接文件名进行下载:

# 示例:生成当前日期的时间戳格式(需根据实际构建时间调整)
TIMESTAMP=$(date +"%Y%m%d.%H%M%S")
curl -O "http://你的远程服务器地址/目标目录/user-producer-info-etl-2.0.0-$TIMESTAMP-53-exec.jar"

这种方式的局限性在于,若实际构建时间与生成的时间戳不符,下载会失败。

内容的提问来源于stack exchange,提问作者gcpdev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:15:56