如何从Julia运行外部程序并等到它完成,然后读取它的输出

时间:2016-05-09 16:50:05

标签: julia

我尝试通过run从Julia执行外部程序,然后等到它完成并将输出存储到变量

我想出的唯一解决方案是:

callback = function(data)
  print(data)
end

open(`minizinc com.mzn com.dzn`) do f
  x = readall(f)
  callback(x)
end

问题在于我不想使用回调

有什么办法,如何等到过程结束然后继续执行?

提前致谢

1 个答案:

答案 0 :(得分:7)

您只需在命令对象上调用readall(或Julia master上的readstring):

julia> readall(`echo Hello`)
"Hello\n"