我有一个 jar 文件,可以将数据发送到该文件进行处理,数据为 json 格式。
data_path
是包含数据的文件的路径。下面的效果很好。但是我拥有的数据不会是文件,而是变量。下面的命令不适用于变量,它尝试读取作为文件的文字目录路径传递的数据。它会是一个不同的 bash 命令吗?或者我可以用 subprocess 模块做些什么?谢谢!
import subprocess as sub
cmd = "java -jar %s < %s" % (jar_path, data_path)
# send data in a var
# cmd = "java -jar %s < %s" % (jar_path, data)
proc = sub.Popen(cmd, stdin=sub.PIPE, stdout=sub.PIPE, shell=True)
(out, err) = proc.communicate()