완료된 백그라운드 작업의 종료 코드를 숨기는 방법이 있나요?
예를 들어, 다음을 실행하면:
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