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

如何向Pluto Notebook传递命令行参数?

在Pluto笔记本中传递命令行参数的实现方法

当你尝试通过julia -e "using Pluto; Pluto.run(notebook=\"example.jl\")" there启动Pluto笔记本时,命令行参数无法自动填充到笔记本内的ARGS变量中,以下是两种可行的解决方式:

方法一:通过环境变量传递(兼容性强)

启动时将参数存入环境变量:

ARGS="there" julia -e 'using Pluto; Pluto.run(notebook="example.jl")'

在Pluto笔记本中,判断当前环境并读取环境变量赋值给ARGS:

# example.jl
# 检测是否处于Pluto运行环境
if isdefined(Main, :PlutoRunner)
    global ARGS = split(get(ENV, "ARGS", ""))
end

println("Hello $(ARGS[1])")

这种方式同时兼容脚本直接运行(julia example.jl there)和Pluto启动两种场景。

方法二:通过Pluto启动回调注入参数(更直接)

修改启动命令,利用on_load回调将命令行参数注入笔记本的全局环境:

julia -e '
using Pluto
# 获取启动命令后的参数
input_args = ARGS
# 启动笔记本并注入参数
Pluto.run(
    notebook="example.jl",
    on_load=notebook -> begin
        notebook.eval(Meta.parse("ARGS = $(repr(input_args))"))
    end
)' there

笔记本内无需额外修改,直接使用ARGS即可:

# example.jl
println("Hello $(ARGS[1])")

注意:该方法依赖Pluto的内部API,未来版本可能存在变更风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 17:42:08