EDITOR 환경 변수는 처음에 어디에 설정됩니까?

EDITOR 환경 변수는 처음에 어디에 설정됩니까?

EDITOR 환경 변수는 어디에서 초기화되나요? 지금까지 다음 파일을 확인했지만 해당 파일이 어디에 있는지 찾을 수 없습니다.

  • ~/.bashrc
  • ~/.bash_profile
  • ~/.프로필
  • /etc/구성 파일
  • /etc/bashrc
  • /etc/환경

답변1

아무데도. 당신은 잘못된 관점에서 이것에 대해 생각하고 있습니다.

각 응용 프로그램에는 자체적으로 선호하는 편집기(또는 호출기 또는 기타 필요한 모든 것)가 있습니다. 그건내장신청서를 입력하세요. 컴파일 타임에 정의되며 절대 변경되지 않습니다.

응용프로그램을 만든 사람이~ 고 싶어요사용자가 나중에 변경할 수 있도록 허용합니다. 그런 다음 애플리케이션은 EDITOR, PAGER 등의 환경 변수를 보고 사용자가 정의한 모든 것을 사용할 수 있습니다.

사용자가 선호하는 편집기로 전환할 수 있는 일부 애플리케이션은 환경 변수 EDITOR를 보지 않고 대신 자체 구성 파일을 봅니다. 또는 둘 다( git예를 들어).

답변2

$EDITOR가 현재 쉘에 설정되어 있는 것 같은데, 어떻게, 어디에 설정되어 있는지 잘 모르시나요? 이런 경우이고 straceLinux가 설치된 시스템 등을 사용하고 있다면 BASH에서 열린 모든 파일을 살펴보는 것이 좋습니다. 이 질문에 대한 답변을 약간 수정했습니다.로그인 시 bash가 실행 중인 스크립트를 확인하세요.

echo exit | strace -e open bash -li

BASH 매뉴얼 페이지에서:

      -i        If the -i option is present, the shell is interactive.
       -l        Make bash act as if it had been invoked as a login shell (see INVOCATION below).

이 답변에 대한 다른 설명에서 언급한 또 다른 방법은 -x실행된 모든 명령을 에코할 수 있는 플래그를 사용하여 bash를 호출하는 것입니다.

/bin/bash -x -l -i -c 'exit' 2>&1 | less

시작 시 $EDITOR가 어떤 방식으로든 설정되고 쉘이 초기화된 후 실행하는 다른 스크립트나 프로그램에 의해 내보내지지 않도록 이 작업을 먼저 수행합니다.

관련 정보