2012-02-16 5 views
2

나는 erlang 응용 프로그램의 릴리스 빌드에 철근을 사용하고 있습니다. 응용 프로그램을 시작하려면 start 옵션을 사용하면 백그라운드에서 제대로 실행되고 명령 프롬프트를 반환합니다. 모든 백그라운드 출력을보고 싶지 않아 콘솔 옵션을 사용하여 실행하지 않았습니다. 하지만 백그라운드에서 진행될 때가 언제 필요한지, 오류로 인해 콘솔을 확인하려면 실행중인 응용 프로그램의 콘솔을 어떻게 얻습니까?Erlang 응용 프로그램을 보는 방법 backgroud에서 실행 중입니까?

답변

0

Ctrl-G를 눌러 JCL 모드로 전환 한 다음 'j'를 눌러 목록에 표시하고 'c'다음에 선택한 작업에 연결하는 번호를 입력하십시오. eshell docs, 특히 JCL 섹션을 참조하십시오.

아, 또는 '명령 프롬프트'가 Erlang 셸이 아닌 OS 셸을 의미하는 경우 IIRC를 사용하면 IILC에서 -name'd 또는 -sname'd (원하는 노드로 시작하는 Erlang 노드를 시작해야합니다. 사용에 연결하려면), 그 노드 (JCL 모드에서 'r')에 연결 한 다음 작업에 연결하십시오.

2

Rebar를 사용하여 릴리스했고 생성 된 시작 스크립트로 노드를 시작했다고 생각합니다. 사용에주의 당신이 그렇게 실행하는 실제 노드 수 있도록

./bin/mynode attach 

그것은 파이프를 통해 쉘에 연결 :

그래서 가장 좋은 방법은 시작 옵션 '연결'을 사용하는 것입니다 Ctrl-c. (제한을 위해 vm.args 파일에 "+ Bi"옵션을 추가하십시오.)

0

배포 용으로 설정 되었다면 원격 쉘을 노드에 연결할 수 있습니다. 다음 명령을 사용하십시오.

erl -sname rem -remsh [email protected] -setcookie the_cookie -hidden