java - 需要解决方案来设计自动化系统
问题描述
我有 5 个 exe 文件。每个 exe 文件都接受一个输入并返回一个输出,该输出将作为另一个 exe 文件的输入。用户现在手动将值传递给 exe 文件,我想通过使用其中一种编程语言来自动化这个过程。我的方法应该是什么。我应该如何为上述场景构建自动化
例如
input1 +input2 ->[ exe 1 ] ->output +input3 -> [ exe 2 ] -> output +input 4 ->
[ exe 3 ] -> output +input 5 -> [ exe 4 ] -> output -> [ exe 5 ] -> final output
解决方案
假设通过.exe
s 的输出您指的是控制台输出,那么我认为最简单的方法是使用 Python 的subprocess
模块,将您的输入作为参数提供并控制可执行文件的输出。
import subprocess
def run_exe(exe_location, *args):
arguments = " ".join(args)
try:
exe_output = subprocess.check_output(f"{exe_location} {arguments}")
return exe_output
except subprocess.CalledProcessError, e:
print(f"There were issues encountered when running {exe_location}")
因此,您可以编排运行不同可执行文件并捕获其输出的不同可能性,以按照示例中描述的方式用作其他可执行文件的输入。
first_output = run_exe(first_exe_location, initial_input)
second_output = run_exe(second_exe_location, first_output, additional_input)
并且可以根据所需的流量继续或修改循环。
推荐阅读
- shell - Jenkins shell 不解释 $ 变量
- kubernetes - 如何使用数字海洋的kubernetes并设置自动缩放?
- angular - Angular 6中用于登录屏幕的量角器测试
- html - 覆盖 CSS 删除属性
- java - RxJava2 压缩两个数据源完成时如何做一些操作
- c - 如何用另一个文件替换文件?
- oracle - 在 FOR 循环中第一次选择 20 条记录并在 oracle 中休息时出现错误
- vb.net - 对自定义类进行排序
- php - BCryptHelper.HashPassword .NET 等效 PHP
- javascript - 插入排序在 JavaScript 中不起作用