리디렉션을 켠 후 어떻게 끄나요? [복사]

리디렉션을 켠 후 어떻게 끄나요? [복사]

좋은 해결책을 찾았어요exec를 사용하여 모든 후속 명령의 stderr을 리디렉션합니다..

나는 다음 예를 사용했습니다.

exec > >(tee $somelog) 2>&1

...모든 것을 완벽하게 만들려고 노력하세요 tee. 이제 어떻게 다시 끌 수 있나요?

답변1

미리 계획하는 경우 가장 좋은 해결책은 설명자를 먼저 저장하거나 다음과 같이 위성 범위에서 리디렉션을 수행하는 것입니다.댓글에 연결된 질문.

그러나 이 작업을 수행하지 못한 경우 다음 명령을 사용하여 터미널에 직접 쓰기를 재개할 수 있습니다.

exec > $(tty)

전제는표준 입력을 리디렉션하지 않았습니다.

만약 너라면가지다표준 입력을 리디렉션하려면 다음을 사용할 수 있습니다.

exec > /dev/tty

, 또한 약간 더 빠릅니다.


이는 터미널의 표준 출력을 재설정합니다. 표준 오류를 구체적으로 재설정하려면 다음을 사용하십시오.

exec 2> ...

위에서 어떤 옵션을 선택하든 상관없습니다.


막혀서 벗어나고 싶다면 셸을 종료했다가 다시 시작하기만 하면 정상으로 돌아갈 수 있다는 점에 유의하세요.

관련 정보