ssh를 통해 컬러 터미널을 얻는 방법? 글꼴 /

ssh를 통해 원격 호스트에 연결하면 모든 것이 단일 글꼴 / 색상 일뿐입니다. 로컬에서 수행하는 것과 같은 색상을 원합니다 (예 : 실행 파일의 경우 녹색, 심볼릭 링크의 경우 파란색). ssh 호스트에서 $ git diff를 실행할 때 색상으로 diff를 표시하도록 =)



답변

서버에서 xterm 이었기 때문에 문제가 있다고 생각했습니다. .bashrc

그리고 실제로! ls --color=autoTTY에 연결된 경우에만 작동합니다. 원격 호스트 --color에서 모든 것을 간단하게 변경 .bashrc하고 이제 모든 것이 예쁜 색상입니다.


답변

이것은 나를 위해 일했다 :

ssh -t my_host my_command

-t열쇠였습니다. 설명했다 .


답변

색상이 이미 설정된 것처럼 보이며 ~/.bashrc문제는 ssh가 bashrc 파일을 사용하지 않는다는 것입니다. ssh 세션에서 다음을 추가하여 bashrc를 사용할 수 있습니다 ~/.bash_profile.

if [ -f ~/.bashrc ]; then
      . ~/.bashrc
fi


답변

서버에 연결할 때 서버에서 XTERM env 변수의 내용은 무엇입니까?

~ > export | grep -i term
TERM=xterm


답변

필자의 경우 누락 된 부분에는 .bashrc 파일에 별칭을 추가하여 추가 할 수있는 ls, grep 등의 색상이 지정되었습니다.

alias ls='ls --color=auto'
alias grep='grep --color=auto'

기타


답변

~./bashrc로컬 및 원격 서버에서 설정을 변경하려고 시도했지만 작동하지 않는 것 같습니다.

그런 다음 ~/.bashrcssh를 통해 원격 서버에 연결해도 원격 서버가 실행되지 않는다는 것을 알았 습니다. 그래서 원격 서버의 puttinng ~/.bashrc 의해 실행되도록 원격 서버를 만들었습니다 . ( https://stackoverflow.com/questions/820517/bashrc-at-ssh-login 기반 ).if [ -f ~/.bashrc ]; then . ~/.bashrc fi~/.bash_profile

따라서이 솔루션에는 ~/bashrc파일을 직접 변경할 필요가 없지만 ~/bash_profile원격 서버의 ~/bashrc파일을 실행 하려면 원격 서버의 파일을 변경해야했습니다 .


답변

직접 로그인하는 동안 색상이 제대로 작동했기 때문에 force_color_prompt=yes파일 에서 줄의 주석 처리를 제거하여 ~/.bashrcssh 위에 색상을 제공했습니다.

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes

(우분투 18.04 LTS)