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);

または...より良い解決策:まったく使用せず、Javaでfgrepすべての検索を行います

于 2012-06-28T13:25:35.200 に答える
0

ProcessBuilder も機能します。

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