GNU 자동 도구, 쉘 기능을 어디에 설치합니까?

GNU 자동 도구, 쉘 기능을 어디에 설치합니까?

GNU autotools를 사용하여 일부 셸 스크립트를 구성하고 설치하는 작은 프로젝트가 있습니다.

이제 스크립트는 일부 셸 함수가 포함된 공개 파일을 가져와야 합니다.

이 파일은 어디에 설치해야 합니까 make install?

에 따르면"설치 디렉터리 변수libexecdir실행 파일(셸 기능을 포함하는 파일 자체는 실행 파일이 아님) 및 datadir아키텍처 독립적 데이터(파일은 아키텍처에 따라 다름)의 경우입니다.

쉘 기능만 포함된 파일을 설치하기 위해 이러한 경로(또는 다른 설치 경로) 중 하나를 사용하는 선례가 있습니까? 이러한 기능은 현재 독립적으로 사용할 수 없습니다.

답변1

설치될 기능은 쉘의 컨텍스트에 있습니다.
그러니 거기에 보관하세요:~/.bash_functions

셸이 로드될 때마다 명령, ~/.bashrc심지어 aliases 도 로드됩니다 ~/.bash_aliases. 이는 쉘 스크립트이므로 쉘 PATH 변수에 명령을 추가하거나 별칭을 설정하면 됩니다. 함수를 정의하는 쉘 스크립트도 여기에서 정의해야 합니다.

.profile그런 다음 또는 뒤에 한 줄을 추가하여 .bashrc종속된 터미널이나 쉘 스크립트의 시작 부분에 로드되었는지 확인하세요.

if [ -f ~/.bash_functions ]; then
    . ~/.bash_functions
fi

필요에 따라 파일에 함수를 추가합니다.

#!/bin/bash
# ~/.bash_functions file
function_one () {
    echo "hi"
}
function_two() {
...

관련 정보