2010-02-25 6 views
1

나는 파이프 Java에서 Grep : 왜 작동하지 않습니까?

java -cp nasa-top-secret.jar gov.nasa.RocketToMoon | grep -v codehaus 

배쉬

이 우글 우글 간단한 명령을 실행하려고하지만 그렙은 (내 문자열을 필터링하지 않음) 작동하지 않습니다. grep을 사용하여 java 출력을 필터링하려면 어떻게해야합니까?

+4

다시 시도? – nanda

+0

@nanda, OutOfMemoryException의 원인 : –

답변

18

출력은 STDERR에있을 수, 대신을 시도해보십시오

java -cp nasa-top-secret.jar gov.nasa.RocketToMoon 2>&1 | grep -v codehaus 
+0

감사합니다! 그것은 완벽하게 작동했습니다. –

3

가능한 시나리오

  1. 을 실제로 "codehaus"모든 라인을, 그래서 그렙 -v 당신에게 아무것도 제공하지 않습니다 . 나는 당신이 무엇을 -v 의 약자라고 생각합니다.
  2. 자바 프로그램이 표준 출력을 인쇄하지 못했습니다. 소스를 확인하고 프로그램이 표준 출력으로 출력되는지 확인하십시오. 그렇지 않으면 프로그램이 뱉어내는 표준 오류가 있는지 확인하십시오.

가능한 문제 해결 단계 :

  1. 가 grep을 할 수있는 파이프, 실행 만이 자바 프로그램을 제거하고 확인 프로그램을 출력이 있습니다.
  2. 명령 의 말에 2>&1을 넣어``자바 -cp 항공 우주국 (NASA) - 최고 secret.jar gov.nasa.RocketToMoon``의 결과입니다 무엇 그렙
관련 문제