완료된 백그라운드 작업의 종료 코드를 억제하는 방법

완료된 백그라운드 작업의 종료 코드를 억제하는 방법

완료된 백그라운드 작업의 종료 코드를 숨기는 방법이 있나요?

예를 들어, 다음을 실행하면:

sleep 5&

5초 후 Enter 키를 누르면 터미널에 다음이 표시됩니다.

[1]+  Done                    sleep 5

마지막 알림을 숨기거나 억제하는 방법이 있나요?

특히 해야 할 일은 다음과 같습니다: nohup script >> file.txt & 그 후에는 터미널(stdout)에서 더 이상 아무것도 하고 싶지 않습니다.

답변1

$ sleep 5 &
[1] 1234
$ disown

답변2

더 큰 망치는 "모니터 모드"(작업 제어)를 완전히 비활성화하는 것입니다.set +m:

정상 및 비활성화된 모니터링 모드:

$ sleep 1 & sleep 2
[1] 5247
[1]+  Done                    sleep 1

$ set +m
$ sleep 1 & sleep 2
[1] 5249
$

그러나 다음과 같이 백그라운드 프로세스를 다시 포그라운드로 가져올 수는 없습니다.

$ set +m
$ sleep 10 &
[1] 5251
$ fg
-bash: fg: no job control

관련 정보