>

이 터미널 세션이 ssh를 통해 Windows PuTTY에서 Linux OpenSSH에 이르는 것으로 시작해야합니다. 이것이 중요한지 확실하지 않지만 어쨌든 말해야한다고 생각했습니다.

현재 터미널에서 한 줄에 더 많은 것을 쓰면 텍스트가 새 줄이 아니라 같은 줄에서 시작하여 프롬프트가 다음과 같이됩니다.

trevor@SEARS-SERVER:~$

이것 (예제 텍스트) :

ne lineSEARS-SERVER:~$ this is the text line that is too long to fit on o

현재 내 PS1은 다음과 같이 .bashrc에 설정되어 있습니다 :

export PS1="\n[$(date +%r)] \e]0;\e[0;32m\u\e[m@\e[38;5;52m\h\e[m:\e[38;5;240m\w\e[m\e[97m$\e[m"

창이 특정 너비 아래에 있으면 다음과 같은 일이 발생합니다.

m$ :32:40 PM] trevor@SEARS-SERVER:~

이것은 내 PS1 구성 또는 PuTTY와 관련이 있다는 것을 알고 있지만 어느 것을 왜, 왜/어떻게 알지 못합니다. 도움이 필요하십니까?

  • 답변 # 1

    문제는 당신의 프롬프트입니다 :

    export PS1="\n[$(date +%r)] \e]0;\e[0;32m\u\e[m@\e[38;5;52m\h\e[m:\e[38;5;240m\w\e[m\e[97m$\e[m"
    
    

    bash가 이스케이프 시퀀스 (인쇄되지 않은)를 무시하게하려면 \[ 로 이스케이프 시퀀스를 묶어야합니다.  그리고 \] .

    그렇지 않으면 bash는 화면에서 프롬프트 길이의 일부로 bash를 계산하고 터미널이 다음 줄로 자동 줄 바꿈되는 시점에 혼란을 겪습니다.

    이것이 도움이 될 것입니다 :

    export PS1="\n[$(date +%r)] \[\e]0;\e[0;32m\]\u\[\e[m\]@\[\e[38;5;52m\]\h\[\e[m\]:\[\e[38;5;240m\]\w\[\e[m\e[97m\]$\[\e[m\]"
    
    

  • 이전 sshd - SSH를 통해 로그인 한 사용자가 Active Direcory를 통과했는지 확인
  • 다음 text processing - 여러 데이터 파일의 특정 줄을 선택하는 방법