하나 있는 경우 run_script
해당 내용은 다음과 같습니다.
#run_script file
ls
그런 다음 이를 사용하여 명령을 bash run_script
실행할 수 있습니다 ls
. 하지만 이제 하나가 생겼고 run_script
그 내용은 다음과 같습니다.
#run_script file
python3 mate30pro5g.py & python3 Mathematica.py & python3 opencv.py &
jobs
를 실행한 후 명령을 통해 백그라운드 작업을 확인할 수 없다는 것을 발견했습니다 bash run_script
. 하지만 모든 작업이 실행 중이라는 것을 알 수 있습니다 ps aux | grep python3
. 그런데 이 명령을 사용하여 모든 작업을 관리하고 싶은데 jobs
왜 이 명령으로 검사를 찾을 수 없나요? 내가 놓친 게 무엇입니까?
답변1
를 사용하여 새 셸을 시작하면 작업 제어가 손실됩니다 bash run_script
. Python 프로세스는 새로 시작된 bash 프로세스의 하위 프로세스로 실행되며 스크립트가 종료되면 (현재 죽은) 상위 프로세스에서 분리됩니다. 현재 쉘의 서브루틴으로 프로그램을 시작하려면 다음을 사용하여 스크립트를 얻을 수 있습니다.
. run_script
으로 차이점을 확인할 수 있습니다 ps auxf
.