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

如何在Windows平台将Jenkins项目构建信息写入文件且不覆盖历史?

如何在Jenkins Windows任务中追加构建信息到文件(避免覆盖)

我懂你遇到的问题——用echo jenkins-build=%BUILD_NUMBER% > Drive:\path\to\file.properties每次都会把文件清空,只留下最新的构建编号,这是因为Windows批处理里的>是覆盖写入操作符。要实现保留历史内容、只追加新信息的效果,你只需要把>换成>>这个追加写入的操作符就行。

基础实现步骤

直接修改你的命令,把覆盖换成追加:

  • 追加构建编号:
    echo jenkins-build=%BUILD_NUMBER% >> Drive:\path\to\file.properties
    
  • 追加构建日期和时间(用Windows系统自带的%DATE%和%TIME%环境变量):
    echo build-date=%DATE% >> Drive:\path\to\file.properties
    echo build-time=%TIME% >> Drive:\path\to\file.properties
    

优化:让构建信息分组更清晰

如果希望每次构建的信息是一个独立的区块,方便后续查看,可以在每次构建的信息前加个分隔线:

:: 先确保目标目录存在,不存在则创建(2>nul用来屏蔽目录已存在的错误提示)
mkdir Drive:\path\to 2>nul

:: 追加本次构建的分组信息
echo ------------------------ >> Drive:\path\to\file.properties
echo jenkins-build=%BUILD_NUMBER% >> Drive:\path\to\file.properties
echo build-date=%DATE% >> Drive:\path\to\file.properties
echo build-time=%TIME% >> Drive:\path\to\file.properties

额外说明

  • >>操作符会自动把新内容添加到文件的末尾,完全不会影响之前的历史构建信息。
  • 如果你偶尔需要清空文件(比如每月重置一次记录),可以在特定触发条件下先用echo. > Drive:\path\to\file.properties清空文件,再执行追加命令。
  • Jenkins的%BUILD_NUMBER%是内置环境变量,会自动替换为当前的构建编号,无需额外配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:58:32