밑줄 친 명령은 무엇입니까?

밑줄 친 명령은 무엇입니까?

tab tab _터미널에 들어가면 Bash는 206가지 가능성을 제안합니다 . 이 중 하나를 실행해 보았 _git_rm으나 아무 일도 일어나지 않았습니다. 무엇입니까?

스크린샷은 다음과 같습니다.

여기에 이미지 설명을 입력하세요.

답변1

이름이 밑줄로 시작하는 이러한 함수는 프로그래밍 가능한 완성 엔진의 일부입니다. Bash는 여기에서 zsh의 규칙을 따릅니다. 여기서 완성을 생성하는 함수는 somecommand호출되고 _somecommand, 함수에 도우미 함수가 필요한 경우 호출됩니다 _somecommand_stuff.

이러한 완성 함수를 수동으로 호출하면 일반적으로 유용한 작업을 수행하지 않거나 오류가 발생하지 않습니다. 완성 엔진 내에서 호출되도록 되어 있습니다.

이는 함수나 변수가 최종 사용자(또는 최종 프로그래머)가 사용하기 위한 것이 아니라 어떤 방식으로든 라이브러리 내부에 있음을 나타내기 위해 선행 밑줄을 사용하는 다양한 프로그래밍 언어의 상당히 널리 퍼진 관행을 기반으로 합니다.

관련 정보