GNU 화면 창 이름을 바꾸는 데 문제가 있습니다.

GNU 화면 창 이름을 바꾸는 데 문제가 있습니다.

나는 내 사무실에서 관리하는 메인 서버에 대한 SSH 연결이 미리 열려 있는 스크린 세션을 팝업하는 것을 좋아합니다. 각 창에 매우 짧은 이름(보통 2-4자)을 지정하여 화면 상태 표시줄에 해당 이름으로 표시됩니다. 그러면 다음과 같은 화면 항목이 표시됩니다.

0$ jen1 ...

이제 해당 서버로 전환하여 무엇이든(디렉토리 목록을 얻는 것만큼 간단한 작업이라도) 수행해야 할 때 이름이 갑자기 확장되어 다음과 같이 됩니다.

0$ ghellings@devjenkins01

모든 창에 액세스할 때에도 같은 일이 발생하여 상태 표시줄이 화면의 가로 너비를 빠르게 초과하게 됩니다. 창이 생성될 때 이름을 잠그고 클라이언트 응용 프로그램이 이름을 변경하지 못하도록 하고 싶습니다. 나는 많은 사람들이 요청하는 것과는 달리 어떤 응용 프로그램도 화면 창 제목을 변경할 수 있는 것을 원하지 않습니다. 해당 화면으로 전환하고 어딘가에 디렉토리를 열면 특히 문제가 됩니다. 그러면 화면 제목이

 (0*$ ghellings@devjenkins01:/opt/somepackage/software/subdirectory)

활성 상태만 변경하고 싶으므로 항상 읽습니다.

`0$ jen1` or `(0*$ jen1)`

창 이름을 잠그고 변경되는 것을 방지할 수 있는 방법이 있습니까?

답변1

나는 RHEL 7 테스트 초기에 이것을 발견했고 그것은 나를 미치게 만들었습니다. RHEL 7의 변경으로 인해 또는 같은 명령이 실행될 때마다 /etc/bashrc창 이름이 변경되고 변경된다는 사실을 발견했습니다. 일부 화면에서는*)screentmuxcdls

if [ -e /etc/sysconfig/bash-prompt-screen ]; then
    PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
## RHEL 7
    PROMPT_COMMAND='printf "\033k%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'

## RHEL 6
    PROMPT_COMMAND='printf "\033]0;%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi

따라서 RHEL 7에서는 다음에서 변경 사항이 발생합니다.]0;도착하다케이PROMPT_COMMAND 섹션에 있습니다.

버그를 공개하는 것을 고려해 보았으나 해결하지 못했습니다. 나는 보통 새로 설치할 때 수동으로 변경합니다.

  • 업데이트 형식이 변경되었습니다.

답변2

아마도 PROMPT_COMMAND변수를 다음과 같이 설정했을 것입니다.

printf "\033k%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"

CentOS 7 시스템에 이것을 가지고 있습니다. 이것은 screen창 제목으로 사용할 각 명령 뒤에 xterm 창 제목을 설정합니다 .

설정을 해제하거나 설정하지 않으려면 PROMPT_COMMAND편집 .bashrc하세요 ./etc/bashrc

답변3

.bashrc또는 을 선택하면 또는 과( 와) 관련된 것을 /etc/bashrc볼 수 있습니다 .ifcasescreen

내 경우에는 다음과 같습니다.

if [ -e /etc/sysconfig/bash-prompt-screen ]; then
    PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
    PROMPT_COMMAND='printf "\033k%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi

case $TERM in파일 아래에 있습니다 /etc/bashrc.

문제는 해당 파일이 없어서 아래 파일을 /etc/sysconfig/bash-prompt-screen사용했습니다 .PROMPT_COMMANDelse

방금 빈 파일을 생성했는데 /etc/sysconfig/bash-prompt-screen화면 창의 제목이 더 이상 동적으로 변경되지 않습니다!

관련 정보