我试图在java程序中运行“剪切”,但是我失去了如何分割命令数组的问题。 我在命令行程序如下:在Java中执行外部程序
cut file.txt -d' ' -f1-2 > hits.txt
而且我想这样
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(new String[]{"file.txt"," -d' ' -f1-2 "," > hits.txt"});
pr.waitFor();
运行Java里面,但我得到以下运行时错误
Exception in thread "main" java.io.IOException: Cannot run program "cut file.txt": java.io.IOException: error=2, No such file or directory
我把这个错误归因于我用作exec命令的字符串数组。任何想法如何做到这一点?还有关于该问题的任何已知文档。谢谢
'pr2'和'rt2'?请修正你的变量名称。 – 2012-03-21 22:36:13
它看起来好像运行java进程的用户没有文件'file.txt'的权限,或者更有可能的是,file.txt与您运行java进程的位置不在同一个目录中。您可以更正相对路径或切换到绝对路径。 – Brad 2012-03-21 22:36:20
这是确切的代码?不应该切入命令数组中吗? – 2012-03-21 22:38:57