使用Process对包含空格的文件名执行cat命令时出错

时间:2015-11-24 07:21:43

标签: java unix

使用代码:

request.getParameter("distID");
                      ^^^^^^

因错误而失败:

Process proc = Runtime.getRuntime().exec(new StringBuffer("cat ").append("../dir1").append("\"").append(File.separator).append("dir2").append(File.separator).append("hello text.xml").append("\""));

实际文件名为cat Error: cat: "../dir1/dir2/hello: No such file or directory cat Error: cat: text.xml": No such file or directory

3 个答案:

答案 0 :(得分:0)

您必须使用hello\ text.xml

来转义空格

答案 1 :(得分:0)

尝试使用双引号,例如" hello text.xml" 。它对我有用。

答案 2 :(得分:0)

我得到了上述问题的解决方案。 我们可以将Command编写到Shell脚本文件中,并通过Process from Java Program执行相同的操作,并且它正常工作。 :)