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

如何在MarkDown文件中正确执行Shell脚本获取动态组件版本

在Markdown中管理组件版本并动态获取版本的正确方法

Markdown是静态标记语言,本身无法执行Shell命令,直接把命令写在Markdown里只会被当成文本显示,没法自动获取动态版本。要实现需求,得借助脚本预先处理生成最终的静态Markdown文件,具体步骤如下:

1. 准备版本模板文件

创建一个模板文件(比如命名为version-template.md),把需要动态生成的版本用占位符代替,示例内容:

component1=1.2
components2=2.3
component3={{COMPONENT3_VERSION}}

2. 编写Shell脚本实现动态替换

创建一个Shell脚本(比如generate-version-md.sh),用来执行命令获取动态版本,再替换模板里的占位符:

#!/bin/bash

# 动态提取component3的版本,优先用$(...)替代反引号,可读性更强
COMPONENT3_VERSION=$(grep 'App_Version' file1 | grep -oP '(?<==).*')

# 处理file1,增加文件存在判断避免报错
if [ -f file1 ]; then
    rm -rf file1
fi

# 替换模板占位符,生成最终的Markdown文件
sed "s/{{COMPONENT3_VERSION}}/$COMPONENT3_VERSION/" version-template.md > component-versions.md

3. 执行脚本生成最终文件

给脚本添加执行权限并运行,就能得到包含正确动态版本的Markdown文件:

chmod +x generate-version-md.sh
./generate-version-md.sh

注意事项

  • 若需要每次获取最新版本,只需重新执行脚本即可更新Markdown文件;CI/CD场景可将脚本加入流水线自动生成。
  • 直接在Markdown中写入Shell命令的方式不可行,所有Markdown渲染器都不会解析执行这些命令。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 04:27:24