gpt4 book ai didi

shell - 如何将文本发送到 shell 脚本中的进程?

转载 作者:行者123 更新时间:2023-12-01 08:29:39 27 4
gpt4 key购买 nike

所以我有一个在 while(true) 循环中运行的 Linux 程序,它等待用户输入、处理它并将结果打印到标准输出。

我想编写一个 shell 脚本来打开这个程序,从一个 txt 文件中输入行,一次一行,并将每一行的程序输出保存到一个文件中。

所以我想知道是否有任何命令:
- 打开程序
- 向进程发送文本
- 从该程序接收输出

非常感谢。

最佳答案

听起来你想要这样的东西:

cat file | while read line; do
answer=$(echo "$line" | prog)
done

这将为每一行运行一个新的 prog 实例。该行将是 prog 的标准输入,输出将放在变量 answer 中供您的脚本进一步处理。

有些人反对“cat文件|”因为这会创建一个您并不真正需要的过程。您还可以通过将其放在 done 之后来使用文件重定向:

while read line; do
answer=$(echo "$line" | prog)
done < file

关于shell - 如何将文本发送到 shell 脚本中的进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2451063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com