나는 bash 내보내기 파일을 구성하고 그들이 속한 환경에 따라 변수를 분류하고 있습니다.
예를 들어 HISTIGNORE
, PATH
, PS1
등은 MANPAGER
"Bash 섹션"과 "Man 섹션"에 있습니다.
$EDITOR 및/또는 $VISUAL은 어떤지 궁금합니다. bash 매뉴얼 페이지에서 찾을 수 없는 것 같습니다.
답변1
당신은 그것을 잘못 분류했습니다 PATH
. 둘 다 그것에 EDITOR
속합니다 .VISUAL
이러한 변수에 대한 아이디어제자리에 있다특정 응용 프로그램에서는 잘못되었습니다. 표준화되어 잠재적으로 사용할 수 있습니다.어느이를 필요로 하는 애플리케이션.
- 만약에어느실행 가능한 프로그램의 경로를 검색하려는 애플리케이션은 를 사용할 수 있습니다
PATH
. (실제로 호출하는 모든 애플리케이션의 경우입니다execvp()
.) - 만약에어느애플리케이션은
SHELL
프로그램 이미지 파일을 찾는 데 사용할 수 있는 셸을 호출하려고 합니다. - 만약에어느라인 편집기를 호출하려는 애플리케이션은
EDITOR
. - 만약에어느비주얼 편집기를 호출하려는 애플리케이션은
VISUAL
. - 만약에어느호출기를 호출하려는 애플리케이션은 를 사용할 수 있습니다
PAGER
. - 만약에어느애플리케이션은 홈 디렉토리가 어디에 있는지 알고 싶어하며
HOME
.
등.
대조적으로, HISTIGNORE
환경 PS1
변수가 전혀 필요하지 않습니다. 후자는 표준에서만 언급됩니다(설명은 없지만). 하나할 수 있는세션 리더 프로세스 또는 기타 최상위 상위 프로세스에서 환경 변수로 설정하고 환경 상속을 사용하여 셸에서 이를 가져올 수 있도록 합니다.
하지만 한 사람이 할 수 있는 건대신에그냥 다음과 같이 설정하세요.껍데기환경으로 내보내는 대신 각 쉘(쉘에 따라)에서 자동으로 실행되는 스크립트의 변수입니다. 예를 들면 다음 과 같습니다. 내 ~/.zshrc
컬렉션이 있고PS1
RPROMPT
껍데기변수, 그들은아니요다음으로 내보내기환경변하기 쉬운.
추가 읽기
- "다른 환경 변수". 기본 정의. 단일 UNIX 사양. IEEE 1003.1. 2018. 그룹을 엽니다.
execvp()
. 시스템 인터페이스. 단일 UNIX 사양. IEEE 1003.1. 2018. 그룹을 엽니다.- VISUAL 대 EDITOR – 차이점은 무엇입니까?
- Bash의 "편집기" 명령은 무엇입니까?
- 기본 터미널의 텍스트 편집기에 대한 명령
- "호출기" 바로가기/별칭이 있는 시스템은 무엇입니까?
- Nano를 설치하지 않고 "Nano를 찾을 수 없음" 경고를 제거하는 방법은 무엇입니까?
- 조나단 드보인 폴라드(2020).Unix 편집기 및 호출기. 자주 주어지는 답변입니다.
답변2
man bash
다음 두 가지 변수가 언급됩니다 edit-and-execute-command
.
현재 명령줄에서 편집기를 호출하고 결과를 셸 명령으로 실행합니다. Bash는
$VISUAL
,$EDITOR
및 편집기를 순서대로 호출하려고 시도합니다 .emacs
다른 프로그램에서는 이러한 변수를 자주 사용합니다.