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

如何在Bash脚本中为交互式程序postprocessor传入指定输入?

解决交互式程序自动输入的方案

管道传递输入

直接通过管道将目标文件名传入程序,适用于单输入场景:

echo "MyFileName" | ~/Executables/postprocessor

Here String 语法

Bash内置的Here String语法,写法更简洁直观:

~/Executables/postprocessor <<< "MyFileName"

Here Document(多输入场景)

如果后续程序还有更多交互式输入需求,用Here Document可以批量传入:

~/Executables/postprocessor << EOF
MyFileName
# 若有其他输入,在此换行添加即可
EOF

Expect 工具(复杂交互)

如果程序需要等待特定提示后再输入(比如有明确的"Enter MyFileName:"提示),可以用expect工具(需提前安装):

expect << 'EOF'
spawn ~/Executables/postprocessor
expect "Enter MyFileName:"  # 替换为程序实际的提示文本
send "MyFileName\r"
expect eof
EOF

补充说明

  • 前三种方法的核心是将输入内容通过标准输入传给程序,不需要程序支持命令行参数,适配大多数交互式程序
  • 如果程序原本设计支持命令行参数但未生效,需检查程序的参数解析逻辑或查看其文档

内容的提问来源于stack exchange,提问作者Mr.Grasses

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 18:40:00