本文介绍了Java使用路径名中的空格执行命令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何执行路径名中有空格的Java System(shell)命令?
How can I execute a Java System (shell) command that has a space in the pathname?
我尝试过引号和反斜杠(),但是它不起作用。
I've tried putting quotes and a backslash (), But it does not work.
ln -s "dir1/dir2" "my\ dir/dir2"
推荐答案
到目前为止,最可靠的方法是使用。
By far the most reliable way is to use Runtime.exec(String[] cmdarray).
如果使用,Java只在空格上拆分命令。
If you use Runtime.exec(String command), Java only splits the command on whitespace.
参见
或使用是这样的:
ProcessBuilder pb = new ProcessBuilder("ln", "-s", "dir1/dir2", "my dir/dir2");
Process p = pb.start();
这篇关于Java使用路径名中的空格执行命令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!