grep
그냥 텍스트 일치하지, 그것은 프로세스 이름 또는 파일 이름 등이 파이썬 스크립트 likejava.py
라는있는 경우입니다
, 너무 결과에있을 것입니다의 생각이 없습니다.
grep은 glob 패턴이 아닌 regex와 함께 작동하기 때문에 *.java
은 좋지 않습니다.
ps -ef|grep $(which java)
이 자바 프로세스를 나열합니다,하지만 기본 자바 설치 :
당신은 시도 할 수 있습니다. 둘 이상의 Java가 설치된 경우 (예 : 귀하의 Jboss와 java7, 바람둥이와 java6, 그리고 Eclipse와 java5,이 실패합니다.
pgrep
이라는 또 다른 도구가 있습니다. 시도해볼 수 있습니다.
pgrep -l java
당신이 더 많은 정보를 얻을 수 man pgrep
을 할 수있는 : 작은 PS를 추가
pgrep, pkill - look up or signal processes based on name and other attributes
편집을 .. | 그렙 트릭
는 질문에 출력을 보았다 :
출력에 grep *.java
이 있는데, 좋은 예입니다. grep *.java
은 java 프로세스가 아니지만 "java"라는 텍스트가 있습니다. 그래서 거기에있다.
bash에서 ps...|grep [j]ava
작품으로 피할 수 있습니다.
ps -ef | grep * .java의 출력으로 질문을 업데이트했습니다. 이것으로부터 뭔가를 추론 할 수 있습니까? – hop
나는 그것이 PS 입력을 무시하는 나의 대답의 후반 부분이 잘못되었음을 암시한다고 생각한다. 나는 그것을 제거 할 것이다. –