좋은 해결책을 찾았어요exec를 사용하여 모든 후속 명령의 stderr을 리디렉션합니다..
나는 다음 예를 사용했습니다.
exec > >(tee $somelog) 2>&1
...모든 것을 완벽하게 만들려고 노력하세요 tee
. 이제 어떻게 다시 끌 수 있나요?
답변1
미리 계획하는 경우 가장 좋은 해결책은 설명자를 먼저 저장하거나 다음과 같이 위성 범위에서 리디렉션을 수행하는 것입니다.댓글에 연결된 질문.
그러나 이 작업을 수행하지 못한 경우 다음 명령을 사용하여 터미널에 직접 쓰기를 재개할 수 있습니다.
exec > $(tty)
전제는표준 입력을 리디렉션하지 않았습니다.
만약 너라면가지다표준 입력을 리디렉션하려면 다음을 사용할 수 있습니다.
exec > /dev/tty
, 또한 약간 더 빠릅니다.
이는 터미널의 표준 출력을 재설정합니다. 표준 오류를 구체적으로 재설정하려면 다음을 사용하십시오.
exec 2> ...
위에서 어떤 옵션을 선택하든 상관없습니다.
막혀서 벗어나고 싶다면 셸을 종료했다가 다시 시작하기만 하면 정상으로 돌아갈 수 있다는 점에 유의하세요.