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

Shell中如何将变量作为参数传递给后续命令并实现自动输入

Shell脚本自动给solana-keygen recover传入种子短语的方法

solana-keygen recover ASK运行时会从标准输入读取用户填入的种子短语,不需要额外安装交互模拟工具,直接通过Shell本身的输入重定向能力就能实现自动传参,常用两种写法:

  • 管道传值写法
    先把种子短语存在变量中,通过echo输出变量内容,通过管道直接喂给命令的标准输入:

    # 把引号内内容替换成你自己的种子短语
    SEED_WORDS="abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about"
    echo "$SEED_WORDS" | solana-keygen recover ASK
    

    如果命令执行过程中还有额外确认提示(比如确认覆盖文件、确认派生路径需要输入y),用echo -e加换行符按提示顺序拼接输入内容即可:

    # 第一行是种子短语,第二行是确认输入y
    echo -e "$SEED_WORDS\ny" | solana-keygen recover ASK
    
  • Here Document 写法
    这种写法不需要处理转义字符,适合多输入项、种子短语包含特殊字符的场景,稳定性更高:

    SEED_WORDS="你的完整种子短语"
    solana-keygen recover ASK << INPUT_EOF
    $SEED_WORDS
    y
    INPUT_EOF
    

    两个INPUT_EOF标记之间的内容会按行顺序依次作为命令的输入,和你手动逐行输入的效果完全一致。

安全提示:不要把种子短语硬编码在脚本中上传到公共仓库,建议从权限为600的本地加密配置文件、系统环境变量读取,执行脚本前确认脚本文件权限仅对当前用户开放,避免助记词泄露导致链上资产损失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 11:48:27