2017-09-18 7 views
1

파일에서 데이터를 추출하여 사전에 저장하고이를 mysql 테이블에 삽입하는 긴 코드가 있습니다. 거의 1000 개의 파일로 구성된 폴더에서이 작업을 반복해야하는데 몇 시간이 걸릴 것입니다. 나는 많은 상충되는 충고를 보았고 어느 것이 가장 간단하고 가장 안전한지 확신하지 못한다. 컴퓨터에서 내 사용자가 로그 아웃하더라도 코드가 계속 실행되도록 할 수있는 명령이 있습니까 (즉, 터미널이 종료됨을 의미)? 나는 아직 그것을 시작하지 않았다.로그 아웃 후 코드를 실행 시키십시오.

+1

이 질문은 이미 (질문이 있습니다.) https://superuser.com/questions/282350/how-do-i-run-a-script-in-the-background-and-leave-it-running- when-i-log-out)을 사용합니다. Dunno가 현명한 사람으로 폐쇄 될만한 가치가있는 경우. – TemporalWolf

답변

1

screen 또는 tmux에서 코드를 실행할 수 있습니다.

1

코드가 현재 ./ingest-data.py처럼 실행되는 것처럼 들리므로 가장 간단한 옵션은 접두어를 nohup (no hangup의 약자)로 사용하는 것입니다.

nohup ./ingest-data.py 

는 쉘이 떨어지면 디버깅 출력을 저장하려면 파일 nohup 출력을 리디렉션해야합니다. Gnu Bash Redirection manual에 자세한 내용이 있습니다.

nohup ./ingest-data.py >output 2>&1 & 

대안 단자는 멀티플렉서 (tmux 또는 byobu 같은) 분리 된 수동 재 부착되지만 쉘 연결 떨어지면 또한 지속 할 수있다. 터미널에 많은 시간을 할애하면 다른 기능이 도움이 될 수 있으므로 관심있는 항목과 동영상을 확인하십시오.

세 번째 옵션은 X2Go 또는 NoMachine을 사용한 데스크톱 분리/재 부착이지만 현재 프로젝트에서 사용할 수있는 것보다 더 많은 조정이 필요할 수 있습니다.

nohup으로 시작하고 싶다면 다른 도구로 이동하십시오.