
저는 Yocto의 임베디드 Linux 버전을 사용합니다. 시스템에서 실행 중인 응용 프로그램이 콘솔에 정보를 표시하는 것을 원하지 않습니다. 이러한 로그를 시스템 로그로 리디렉션하거나 결국에는 다른 일반 파일로 리디렉션하고 싶습니다. 내 스크립트나 애플리케이션 내에서 rsyslog에 직접 로그인할 수 있다는 것을 알고 있지만 시스템의 모든 애플리케이션에 대한 소스를 변경하는 것은 너무 힘듭니다. stdout 및 stderr을 rsyslog로 강제로 리디렉션하거나 결국 다른 일반 파일로 영구적으로 리디렉션할 수 있습니까?
답변1
에 쓸 수 있습니다 logger
. 기본적으로 기능과 우선순위를 사용 user.notice
하지만 이는 적절한 명령 플래그를 사용하여 변경할 수 있습니다.
logger 'this is a test'
ps -ef 2>&1 | logger
답변2
리디렉션을 사용하여 셸을 실행할 수 있습니다.
$ bash >out 2>err
ls
exit
이제 해당 셸에서 실행한 명령의 모든 출력은 파일로 이동되고 out
모든 오류는 err
.