Linux에서 PuTTY 제목 표시 줄에 표시되는 내용을 어떻게 선택합니까?


8

PuTTY 구성에는 터미널 → 기능에 원격 제어 창 제목 변경 사용 안함 이라는 옵션이 있습니다. 이 기능을 사용하지 않으면 콘솔에서 return 키를 누를 때마다 PuTTY의 제목 표시 줄이 변경됩니다.

나는 내가 가지고있는 모든 PuTTY 클라이언트마다 하나를 지정하는 것보다 Linux에서 제목 표시 줄 텍스트를 설정하는 것이 더 깨끗한 솔루션이라고 생각했습니다. 그렇다면 리눅스 제목을 창 제목으로 어디에서 수정할 수 있습니까?


$ uname -a
Linux drevo 2.6.32-5-amd64 # 1 SMP 월요일 1 월 16 일 16:22:28 UTC 2012 x86_64 GNU / Linux

$ 고양이 / etc / debian_version
6.0.4

답변:


6

곤솔, 퍼티 및 xterm을 포함한 대부분의 터미널 프로그램은 기존 VT100 터미널을 에뮬레이트합니다. 이 터미널을 사용하면 이스케이프 시퀀스라는 특수 문자 시퀀스를 사용하여 굵은 체, 색상, 터미널 제목 설정 등을 비롯한 특정 항목을 설정할 수 있습니다.

bash 쉘에는 PROMPT_COMMAND라는 변수가 있는데, 설정하면 인쇄 할 때마다 프롬프트되기 전에 평가됩니다 (zsh는 비슷한 것이 있다고 생각합니다. 실제로 bash는 코드를 가져 온 것으로 생각합니다). PROMPT_COMMAND에서 이스케이프 시퀀스를 출력 할 수 있으며 제목 표시 줄이 설정됩니다.

이것이 내가 가지고있는 것입니다 (Linux / bash) :

USER=$(/usr/bin/id -un)
HOSTNAME=$(uname -n)
HOSTNAME=${HOSTNAME%%.*}
PROMPT_COMMAND='echo -ne "\e]0;$USER@${HOSTNAME}: $(pwd -P)\a"'

~ / .bashrc에 넣을 수 있습니다

터미널로 할 수있는 많은 사용자 정의가 있습니다. 프롬프트의 끝을 쉽게 볼 수 있도록 프롬프트에서 굵게 표시하는 것이 좋습니다. 이렇게하면 기본 검정색 배경에 굵은 노란색으로 표시됩니다.

PS1="\[\e[33;1m\]\h:\$\[\e[0m\] "

리눅스 프롬프트 커스터마이제이션을 둘러 보면, 무엇을해야하는지 아는 것보다 더 많은 HowTo가 있습니다. 가장 읽기 쉬운 것을 고르십시오.


14

터미널 제목은 콘솔 출력에서 ​​특수 이스케이프 시퀀스를 사용하여 설정됩니다. 기본적으로 bash 프롬프트는 이스케이프 시퀀스를 포함하고 제목을 현재 작업 디렉토리로 설정합니다.

따라서 PS1 변수를 편집해야합니다 (대부분 설정되어 있음 ~/.bashrc). 그렇지 않으면 프롬프트가 표시 될 때마다 bash가 제목을 덮어 씁니다.

그런 다음 로그인 할 때 실행되는 스크립트에 다음을 입력하여 제목을 설정할 수 있습니다. 예 ~/.profile:

echo -e "\033]0;<your string>\007"

이것은 질문에 대답하는 유일한 것입니다.
Erik Aronesty

변경 -e-en당신이 에코 명령에 의해 출력되는 여분의 빈 줄을 방지하려는 경우.
ADTC

2

많은 포럼을 검색했는데 질문에 대한 답변을 찾지 못했습니다 :
모든 명령 출력을 퍼티 제목으로 가져 오는 방법?

다른 프로그램이 서버의 일부 작업이 완료된 시점과 올바른지 잘못된지를 알기 위해 필요했습니다. stdout 및 stdin이 작동하지 않습니다. 나는 많은 지연을 대기 지연과 함께 사용했으며 일부 명령은 작동하지 않았습니다. 해당 서버에 XSEL 및 XCLIP를 설치할 수 없습니다.

솔루션은 다음과 같습니다.

  1. 파일에서 명령 출력을 가져옵니다.
  2. 해당 파일을 제목으로 에코하십시오.

Putty 클라이언트 및 SUSE 서버에서 다음과 같습니다.

ls /home | grep domagaja > logutoit.txt 
echo -e "\033]0\\;$(cat logutoit.txt)\\007\\c"

누군가가 이것을 사용할 수 있기를 바랍니다. 물론 모든 서버 유형 및 퍼티 클라이언트 설정에는 작동하지 않지만 아이디어는 잘 작동합니다.

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