zsh가 때때로 stdout을 표시하지 않습니다


0

최근 stdout zsh에 많은 항목을 생성하는 명령이있을 때 (최근 6 개월 AFAIR) 출력 표시가 중지되었습니다.

예를 들어 내가 할 때 :

for i in `seq 2000`; do echo AAA; done

출력을 얻지 못하고 줄 바꾸기를 입력해도 커서가 움직이지 않지만 요청은 나가고 있습니다.

내가 숫자를 줄이면 seq:

for i in `seq 20`; do echo AAA; done

나는 출력을 얻습니다.

bash에서 두 명령을 모두 실행하면 각 경우에 출력이 표시됩니다. zsh는 어떻게 되었습니까? 어떻게 든 stdout을 버퍼링하기 시작 했습니까? 아니면 seq어떻게 든 잘못입니까?

zsh 버전 : debian / 5.6.2-3

내 .zshrc는 꽤 길지만 한 버전에서 작동하고 다른 버전에서는 너무 이상하게 작동하기 시작했습니다. 버퍼링이나 다른 옵션이 있습니까?

업데이트 : 내 zshrc의 다음 항목으로 좁혔습니다.

case $TERM in                                                                                                                                                                                                   
  *xterm*|rxvt|(dt|k|E|a)term)                                                  
    preexec () {                                                                
      print -Pn "\e]2;$1\a"                                                     
    }                                                                           
  ;;                                                                            
  screen*)                                                                      
    preexec () {                                                                
      print -Pn "\e\"$1\e\134"                                                  
    }                                                                           
  ;;                                                                            
esac                                                                            

zsh 5.6.2에는 문제가 없습니다. 버전에 대한 세부 정보를 포함 echo $ZSH_PATCHLEVEL하고 ( ) 개인 설정을로드하지 않고 시도하십시오 ( zsh -f).
mpy

@ mpy 감사합니다. 내 버전을 추가했으며 개인 설정없이 작동합니다. 그러한 이상한 행동을 일으키는 원인은 무엇입니까?
Krzysztof Krasoń

불행히도, 게시 한 코드 (터미널 / 화면 제목을 현재 실행중인 프로그램으로 변경하기 위해)를 사용하여 설명 한 동작을 재현 할 수 없습니다. 나는 문제없이 2000000까지 올라 갔다.
mpy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.