터미널에 표시하기 위해 백그라운드 프로세스 출력을 "호출"할 수 있습니까?
예: cron이 apt-get을 시작하여 시스템을 업데이트합니다. apt-get의 출력을 보고 싶습니다.
답변1
설마. 출력 파일에서 프로세스를 분리하여 현재 터미널에 연결할 수 있는 도구가 있습니다.실행 중인 프로세스를 거부하고 이를 새 화면 셸에 연결하는 방법은 무엇입니까?. 하지만:
- 이러한 도구는 디버깅 인터페이스(
ptrace
) 부적절한 방식으로 프로그램 실행을 수정합니다. 이로 인해 일부 프로그램이 중단될 수 있습니다. - 작동하는 경우 출력은 이동해야 하는 로그 파일 외에 터미널에 표시됩니다.
- 도구를 실행하기 전에 내보낸 출력은 로그 파일에만 저장됩니다.
cron 작업의 출력은 어딘가에 기록됩니다. crontab의 스크립트는 출력을 파일로 리디렉션하거나 cron은 출력을 관리자에게 이메일로 보냅니다. crontab 항목을 확인하여 출력 위치를 확인하세요.
Linux에서는 를 보면 이를 확인할 수 있습니다. 파일 설명자 1은 표준 출력이고 2는 표준 오류입니다./proc/PID/fd/
답변2
나는 이것이 불가능하다고 생각한다. 이는 프로세스가 이 상황을 처리하는 방법을 알고 있다고 가정하고 stdin/stdout/stderr을 다시 열 것입니다.