2012-01-05 3 views
2

유닉스에서 동작하는 자바 프로그램을 작성 중이다. 영원히 달리고 싶습니다. 그러나 커맨드 라인에서 시작하면 프로그램이 멈출 때까지 항상 그 창을 열어 두어야합니다. 아무도 나에게 백엔드에서 어떻게 실행할 수 있는지에 대한 아이디어를 줄 수 있습니까? 명령 줄에서 시작하면 명령 줄을 닫을 수 있습니다. 대단히 감사합니다.유닉스에서 명령 행과 독립적으로 실행되는 프로그램에 관하여

답변

2

당신은 nohup를 사용할 수 있습니다.

1

프로그램을 "데몬"으로 만드는 것에 대해 묻습니다. daemonizing java 프로그램에 관한 theselinks과 리눅스에서의 모든 프로세스를 daemonizing에 관한 this one을 확인하십시오.

$ nohup your-program & 
$ exit 

을하고-프로그램은 완료 될 때까지 백그라운드에서 계속 실행됩니다 : 당신은 "디먼 화"하지 않으려면

+1

아마도 과잉 공격입니다 -'&'를 사용하여 백그라운드에서 실행했을 때의 삭제 된 대답 일 것입니다/shell uses) 아마 더 좋습니다. –

+0

일반적으로 OP가 요청하는 것처럼 명령 줄을 종료 할 수 없습니다. 내 컴퓨터에서 'sleep 100'을 실행 한 다음 쉘을 종료하면 수면이 종료됩니다. 화면의 경우 –

1

... 또 다른 옵션은 "화면"유틸리티를 사용하는 것입니다. 당신이 그것을 사용한 적은 조금 까다 롭긴하지만 직장에서 터미널에서 일을 시작하고 다른 곳에서 같은 터미널에 쉽게 다시 연결하여 일의 상태를 확인하는 것과 같은 일을 할 수 있습니다. 장기 실행 작업을 실행하는 서버에 연결하는 데 사용합니다. 화면을 사용하지 않으면 내 로컬 컴퓨터가 고장 나거나 전원이 나가거나 화재 등으로 죽을 것입니다.

+0

+1입니다. 언젠가는 비슷한 일을하기 위해 그것을 사용했고, 장기간 일하는 것에는 nohup보다 낫다. – Cemre