자체 프로세스에서 다음 예제를 어떻게 실행할 수 있습니까?

자체 프로세스에서 다음 예제를 어떻게 실행할 수 있습니까?

환경은 Debian, Ubuntu 등 Linux입니다.

두 가지 예가 있습니다. 하나는 잘 작동하고 다른 하나는 작동하지 않습니다. 작동하지 않는 것을 어떻게 고치나요?

첫 번째 예:

여기서는 터미널에서 명령을 실행하여 다른 프로세스를 시작합니다. 그런 다음 터미널을 닫아도 시작된 xed프로세스는 종료되지 않습니다.

var=xed
# start the xed
nohup "$var" &

이제 터미널 창을 닫아도 xed종료되지 않습니다. 이것이 내가 원하는 일입니다.

두 번째 예:

이 예에서는 터미널에서 두 번째 명령도 실행합니다. 그러나 이 경우 터미널 창을 닫으면 휴대용 Tor 브라우저 시작 프로세스도 종료됩니다.

터미널 창을 열고 다음을 입력합니다(더 쉬운 호출 방법을 제공한 terdon 덕분에).

var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" &

지금 터미널 창을 닫으면 휴대용 Tor 브라우저 프로세스가 충돌합니다. 이는 이 경우 Tor 프로세스가 독립적이지 않거나 모든 프로세스가 독립적이지 않다는 것을 의미합니다.

아마도 다음 링크가 힌트를 줄 수 있을 것입니다:

답변1

다음 솔루션은 .sh 스크립트가 아닌 터미널에서 작동합니다.

cd /home/user/Schreibtisch/Tor/tor-browser_en-US
var='./Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" & disown

다음은 작동하지 않습니다(터미널이 닫히면 브라우저가 충돌합니다).

var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" & disown

다음과 같이 "nohup"을 사용합니다.

1단계: 터미널을 열고 다음을 입력합니다.

var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" &

2단계: 동일한 터미널에 다음을 입력합니다.

nohup xed &

3단계: 터미널을 닫습니다. 위의 내용은 충돌하지 않습니다.

관련 정보