와 같은 특정 명령에 대해 색상을 끌 수 있지만 ls
명령 자체의 API를 사용하지 않고도 가능합니까? do와 같은 명령에 대한 색상을 끄는 env 변수 종류가 있습니까 COLOR=off ls
? 모든 솔루션을 높이 평가하겠습니다.
편집: 모든 명령에 적용할 수 있는 일반적인 솔루션을 원합니다. 좋다COLOR=off command_name
답변1
서식의 일부 변경을 허용하려는 경우 파이프로 연결하는 것이 좋습니다.cat
ls | cat
색상은 없지만 각 항목에 줄 바꿈이 있습니다.
편집하다:
쉘 설정을 통해 색상 끄기
쉘의 rc 파일을 확인하고 색상이 설정된 위치를 확인한 다음 .<shell>rc_mono
이러한 설정이 제거된 위치를 새로 만들고 소스를 지정하여 완료하세요. 예를 들어 bash의 경우:
$cat ~/.bashrc_mono
export TERM=xterm-mono
. ~/.bashrc
alias ls='ls --color=none'
alias grep='grep --color=none'
색상은 일반적으로 에서 설정되므로 의 . ~/.bashrc
새 별칭 앞에 가 있어야 합니다 . 그래서 당신이해야 할 일은ls
grep
~/.bashrc
. ~/bashrc_mono ; ls
따라서 "redo colors"-rc가 좋을 수 있습니다.
$cat ~/.bashrc_recolorize
export TERM=xterm-256color
. ~/.bashrc
예를 들어 사용 htop
하면 차이점을 볼 수 있습니다.
답변2
TERM
한 가지 옵션은 색상을 지원하지 않는 터미널 유형으로 변수를 설정하는 것입니다 .
예:
TERM=dumb ls
TERM=dumb command_name
echo foo | TERM=dumb grep --color o
프로그램에 멍청한 터미널을 사용하라고 지시하면 실행하는 명령에 따라 다른 (원치 않는) 효과가 있을 수도 있습니다. 예를 들어 vi
더 이상 커서 키를 인식하지 못할 수도 있습니다.
제안한대로펠릭스JN시도해 볼 수도 있지만 TERM=xterm-mono
내 테스트 시스템(Windows의 Git bash)에서는 TERM=dumb
.