깨진 TTY를 재설정하는 방법?


15

다음을 실행하면 My Slackware TTY를 쉽게 끊을 수 있습니다.

cat some_binary_file

명령 후 전체 TTY는 더 이상 읽을 수있는 문자를 표시하지 않지만 여전히 키보드 이벤트에 응답합니다.

로그 아웃했다가 다시 로그인해도 TTY가 여전히 깨져서 더 이상 읽을 수있는 문자가 표시되지 않습니다. 정상적인 TTY 작동을 복원하려면 머신을 다시 시작해야합니다.

전체 컴퓨터를 다시 시작하지 않고 해결책이 있습니까?

답변:


13

실행 echo ^v^o이며, 그 echo다음 Ctrl-v다음 Ctrl-o입력합니다. 이 보이지 않습니다 Ctrl-v. 로 표시됩니다 echo ^O. Ctrl-v제어 문자를 통과하여 상세 모드로 Ctrl-o설정하면 터미널이 재설정됩니다.


4
짧은 힌트 : TTY를 완전히 사용할 수 없거나 로깅 콘솔 인 경우 다른 TTY에서 쉽게 재설정 할 수 있습니다. echo ^v^o > /dev/ttyN여기서 N은 터미널 수입니다.
Torben

에서라도에 나를 위해이 작동하지 않음 (10.11.6) / iTerm2 (3.0.12) / bash는 (4.1.2)
에드 랜달

25

일반적으로 running reset은 터미널을 재설정합니다. 그러나 일부 키 바인딩 .inputrc이 손실 될 수 있습니다.


충돌 한 tmux oh-my-zsh 창을 수정 한 매우 간단한 솔루션입니다.
Shadoninja

이것은 내 의견으로는 허용되는 답변보다 낫습니다. reset키 조합을 사용하는 것보다 입력하는 것이 입력하기 쉽고 Enter 키를 누르는 것이 보이지 않으면 100 % 작동합니다.
세르지오

12

ANSI 재설정 명령을 시도 할 수 있습니다.

printf "\033c"

이것은 OpenBSD 5.4에서 작동 한 유일한 것입니다
execNext

1
이것은 쉘 (bash)에서 echo -e '\ 033c'로 작동했습니다.
Ed Randall

3
@EdRandall 예. "echo -e"는 모든 쉘에서 지원되는 것은 아니지만 printf이식성이 뛰어나므로 bash를 포함한 모든 쉘에서 작동합니다.
jlliagre

나는 이것이 IPA에서 갈매기 분음 부호와 아무 관련이 없다고 생각합니까? U + 033C‹◌̼›\ N {
아래와 같이 얽힌

@TRiG 참으로. 유명한 Eric Cantona의 인용문 과는 아무런 관련이 없습니다 . ;-)
jlliagre

5

터미널에 입력 한 문자가 표시되지 않았습니다. 다른 트릭은 작동하지 않았습니다. 이것은 작동합니다 :

stty sane

나를 위해 일했다. 때로는 응답이없는 상태의 터미널이 있지만 다른 제안으로는 다시 출력을 줄 수 없습니다. 다른 제안은 시도했지만 작동하지 않았습니다.

echo ^v^o
reset
printf "\033c"

출처 : /unix//a/79686/53236


0

실제로 몇 가지 잠재적 인 문제가 있으며 환경과 관련이있을 수 있습니다. @Jesper가 대답했듯이 먼저하고 싶습니다 stty sane. 그러나 환경을 올바르게 설정하지 못할 수도 있습니다.

이 차이에 기인 /bin/bash하고 /bin/sh. 당신의 tty를 열면 실행 /bin/bash하고 시도하십시오 stty sane. 이것은 모든 것을 고쳐야합니다. 마지막으로, 그런 것을 .bashrc에 추가하는 것이 좋습니다.

또 다른 옵션은 정상적인 tty 소프트웨어를 설치하는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.