0

我想在本地目录中查找包含单词的文件:

fgrep word *

我不明白我怎么能得到这个例外:fgrep: *: No such file or directory

更新:

我从java运行这段代码:

        Runtime runtime = Runtime.getRuntime();
        Process process = runtime.exec(command);

当我尝试命令时ls一切正常

4

2 回答 2

0

您可以保存此脚本:

#!/bin/bash
fgrep word *

然后更改权限

chmod +x myscript.sh

并打电话给runtime.exec("myscript.sh");

或者......更好的解决方案:编写一个遍历目录中所有文件并调用的java函数runtime.exec("fgrep word " + filename);

或者......更好的更好的解决方案:根本不使用并用javafgrep做所有的搜索

于 2012-06-28T13:25:35.200 回答
0

ProcessBuilder 也可以:

        ProcessBuilder pb = new ProcessBuilder("bash", "-c", command);
于 2012-06-28T14:33:23.467 回答