터미널 및 SSH에서 색상 비활성화 출력이없는 시스템으로 SSH를 연결하고이

내 로컬 Linux 시스템은 다음과 같이 컬러 터미널 출력을 가지고 있습니다.

여기에 이미지 설명을 입력하십시오

pfSense / BSD 상자에 SSH를 연결하면 다음과 같이 색상이 변경됩니다.

여기에 이미지 설명을 입력하십시오

유색 로컬 터미널 출력이없는 시스템으로 SSH를 연결하고이 pfSense / FreeBSD 상자로 SSH를 실행하면 유색 출력을 활성화하고 원하지 않는 유색 출력 /

로컬 시스템이나 중개 시스템을 통해 pfSense 상자에 SSH로 연결할 때 클라이언트가 원격 색상 설정을 무시하도록 로컬로 변경할 수있는 것이 있습니까? 이상적으로는 흑백, 2 톤 표준 배경 및 텍스트 색상만으로 유지하고 싶습니까?



답변

tty는 터미널이 색상을 변경하도록 알리기 위해 ANSI 인코딩 된 제어 시퀀스를 전송하기 때문에 터미널의 색상이 나타납니다. 대부분의 터미널 응용 프로그램이 아닌 경우 일부는이를 무시하고 모든 텍스트를 한 가지 색상으로 표시하도록 구성 할 수 있습니다.

에서가 xterm, 당신은 사용할 수있는 -cm옵션을 선택합니다. Konsole의 경우 모든 색상의 매핑을 동일하게 변경할 수 있습니다. XFCE 터미널 응용 프로그램에는 비슷한 옵션이있을 수 있습니다.


답변

TERM호환되지만 색상 지원이없는 일부 항목으로 변수를 변경하면 작동 할 수 있습니다. 처럼:

TERM=xterm-old

기본적으로 TERMFreeBSD 시스템 termcap 또는 terminfo 데이터베이스 TERM=the-term tput colors는 양수를 반환하지 않으며 GNU ls dircolors -p | grep -x 'TERM the-term'는 아무것도 반환하지 않는 것으로 알려져 있습니다. 단말기가이를 지원한다고 주장하는지 여부에 관계없이 색상 이스케이프 시퀀스를 출력하는 응용 프로그램에서는 여전히 작동하지 않을 수 있습니다.

또는 GNU screen를 사용하여 (zsh 구문)과 같은 색상을 비활성화 할 수 있습니다 .

screen -c =(printf %s\\n "termcapinfo * 'AF=\E[1m:AB=\E[7m'") ssh ...

이렇게 하면 전경색을 설정하려고 할 때마다 굵게 표시 되고 배경을 설정하려고 할 때마다 반전 됩니다.

필자는 FreeBSD가 터미널 배경이 검은 색 (또는 적어도 어두운)이라고 가정한다는 사실로 요약됩니다. xterm대신 을 사용 하는 xfce-terminal경우 배경색 및 전경색 및 / 또는 개별 색상을 동적으로 변경하여 다른 색상 프로파일을 설정할 수 있습니다. 이는 이스케이프 시퀀스를 통해 수행되지만 xtermcontrol더 쉬운 명령을 사용할 수도 있습니다 .


답변

다음 명령을 입력하여 제거하십시오.

$ ls --color=none

또는 unalias그것을 제거하는 데 사용 하십시오 :

$ unalias ls


답변

~ / .bashrc를 수정하고 싶지 않은 경우 다음과 같은 내용이 포함되어 있습니다 export PS2=.....+colors.......

리눅스 콘솔에서 하나 시도 TERM=linux-m1b또는 TERM=linux-m2“회색 / 흰색 / 검은 색과 희미한”리눅스-M1B 또는 “그린 / 화이트 / 블랙과 블루”(빈티지!) 리눅스 m2에 관해서는 흑백를 얻을 수 …

퍼티 (Mac 사용자를위한 포트가 있음)를 사용 TERM=putty-m1b하고 TERM=putty-m2대신 …

이것은 당신이 필요로하는 것을 정확하게 수행 할 것입니다 : 당신은 그것에 대한 최신 terminfo 데이터베이스가 필요하거나 필요할 경우 거기에서 얻을 것입니다 : wget http://canal.chez.com/linux.ti ; tic -x linux.ti

알렉스 추신 : xterm-mono는 더 이상 존재하지 않는 것 같습니다.


답변

먼저 기본 별칭을 확인하십시오.

alias

alias ls-'ls --color=auto

작동하지 않고 빠른 해결 방법이 필요한 경우. 이것을 시도 ls하고 awk파이프 :

vi /usr/local/bin/list
#!/bin/bash
ls $1
exit

perms를 설정하십시오 744.
이를위한 안전한 장소는 /usr/local/bin
PATH에 포함되어 있는지 확인하십시오 /usr/local/bin.

다시 신중을 사용하십시오.

한가지… 색상은 디렉토리에 플래그 를 붙이기위한 것입니다 . ls="ls --color=auto"잎만 이름을 끄 ls -aF거나 …
또는 ls -F디렉토리 이름을 추가합니다 /. 그래서 나는 당신이 알고 있다고 제안합니다. 당신이 수 alias ls="ls -aF"또는 alias ls="ls -F".


답변