Bash 기능을 설치하는 데 선호되는 방법은 무엇입니까?

Bash 기능을 설치하는 데 선호되는 방법은 무엇입니까?

나는 다음과 같은 bash 함수를 작성했습니다.위로github를 통해 공유합니다. 이제 설치 지침에 어려움을 겪고 있습니다. "설치" bash 기능에는 두 가지 옵션이 있다는 것을 알고 있습니다.

  1. 그것들을 넣어라.bashrc
  2. .bash_functions라는 파일에 넣고 해당 파일을.bashrc

그래서 내 생각은 기능을 다운로드하고 .bashrc그에 따라 파일을 수정하는 것이 좋습니다.

유사한 프로젝트에서 이를 어떻게 구현하는지 살펴보았는데, 그 중 일부는 .bashrc설치 시 파일을 조작하기도 했습니다(즉, 거기에 기능을 배치했습니다). 이렇게 하는 것이 일반적인 것 같지만 .bashrc자동화하는 것은 나쁜 생각이라고 생각합니다.

그렇다면 선호되는 방법은 무엇입니까? 이에 대한 합의가 있습니까?

답변1

배포 방법에는 3가지가 있습니다.

  1. 다음에 줄 추가$HOME/.bashrc
  2. 출처가 있는 파일.bashrc
  3. 디렉토리에 포함될 수 있는 파일/etc/profile.d

나는 그것이 기능의 수와 길이에 달려 있다고 말하고 싶습니다. 2개 이상의 기능이고 약간 긴 경우 사용자 파일에서 가져오거나 $HOME/.bashrc제공한 스크립트를 통해 병합한 단일 파일(또는 여러 파일)로 배포하는 것이 좋습니다./etc/profile.d

단일 함수이거나 2개의 함수이고 짧다면 엄격하게 .txt 파일로 배포하거나 단순히 github에 코드로 게시하여 현재 폴더에 복사/붙여넣을 수 있습니다. $HOME/.bashrc기존 파일에서 /etc/profile.d궁극적으로 사용자에게 맡깁니다.

노트: /etc/profile.d여러 셸(Csh, Bash, Zsh 등)용 파일이 포함되어 있습니다. 여기에 포함된 모든 파일은 다른 쉘에서도 사용됩니다. 이러한 파일의 이름은 해당 파일을 사용할 쉘을 결정합니다. A는 .cshCsh/Tcsh를 제공하고, a .sh는 Bash, Zsh 등을 제공합니다.

올바른 사용에 대해/etc/profile.d

궁금하다면 추가된 파일에는 /etc/profile.d로그인 시작 시 한 번만 실행되는 명령이 포함되어 있어야 합니다. (여기에는 로그인 쉘로 시작하기 때문에 그래픽 로그인도 포함됩니다.) 쉘이 대화형인 경우 쉘을 실행하는 사용자는 아마도 로그인되어 있으므로 조상(시작한 사람 또는 시작한 사람)이 있을 수 있습니다. , 또는 시작 등) 이는 로그인 셸입니다.

AskUbuntu에서 다음과 같은 훌륭한 답변을 확인하세요.비로그인 쉘이 /etc/profile을 호출하지 않는 이유는 무엇입니까?, 대화형 쉘과 로그인 쉘의 차이점과 그 의미를 자세히 설명합니다.

관련 정보