1

想使用 Open3 的 popen3 函数在 ruby​​ 上运行系统命令。它会是这样的:

pdf2htmlEX --zoom 1.3 ~/test.pdf

由于文件名将由参数传递,我想对其进行清理。如果运行,例如:

Open3.popen3("pdf2htmlEX --zoom 1.3 ~/test.pdf") do |stdin, stdout, stderr, wait_thr|

end

代码工作正常,但是当我尝试分离参数时(因为函数表明它会被转义),类似于:

Open3.popen3("pdf2htmlEX --zoom 1.3", "~/test.pdf") do |stdin, stdout, stderr, wait_thr|

end

它给了我错误:没有这样的文件或目录 - pdf2htmlEX --zoom 1.3

有谁知道我如何解决它?谢谢!

4

1 回答 1

3

参数需要与命令分开。尝试

Open3.popen3("pdf2htmlEX", "--zoom", "1.3", "~/test.pdf")...

于 2016-10-04T14:35:32.327 回答