0
public class Test200 {
    public static void main (String args []) {
        System.out.println("David");
        System.out.println("Peter");
}

}

output=$(java Test200)
echo $output

David Peter の両方の値を取得します。シェルスクリプトで「David」のみを返したいとしましょう。どんな手掛かり ?ありがとう。

4

2 に答える 2

4

あなたは戻ってこない"David""Peter"、あなたはそれらをに印刷しますSTDOUT。したがって、これらのうちの 1 つだけを印刷したい場合は、もう一方のprintln呼び出しを削除してください。

シェルには整数値のみを返すことができます。これは によって行われSystem.exit(status)ます。

于 2013-04-10T06:59:23.837 に答える
0

grepコマンドを使用して、複数の値を使用する場合に期待される値のみを返すようにしてくださいegrep

output=$(java Test200)

代わりに使用

output=$(java Test200 | grep 'David')

しかし、私はこのコードをテストしていません。動作するはずです。

またはこれを試してください

java Test200 >> outfile

すべての SYSOUT は、外部スクリプトを使用して操作を実行できることに基づいて outfile ベースにリダイレクトされます。

于 2013-04-10T08:14:50.597 に答える