모든 디렉터리에서 소프트웨어 응용 프로그램을 실행할 수 있도록 특정 디렉터리의 bin 하위 디렉터리를 PATH에 어떻게 추가합니까?

모든 디렉터리에서 소프트웨어 응용 프로그램을 실행할 수 있도록 특정 디렉터리의 bin 하위 디렉터리를 PATH에 어떻게 추가합니까?

방금 소프트웨어를 다운로드했습니다.지에화학, 화학 구조를 생성, 관리 및 분석할 수 있는 도구입니다. 설치 프로그램 .sh스크립트를 실행하고설치 설명서모든 디렉토리에서 JChem 애플리케이션을 실행할 수 있도록 binjchemsuite디렉토리 의 하위 디렉토리를 추가하는 것이 좋습니다 .PATH

bin주어진 디렉토리의 하위 디렉토리의 모든 하위 디렉토리를 포함하는 방법에 대한 관련 질문을 읽었습니다 $PATH.

for d in /opt/*/bin; do PATH="$PATH:$d"; done

stow에 대해서도 읽었지만 한번도 사용해본 적이 없고 GNU 웹사이트에서 어떤 버전을 받아야 할지 모르겠습니다.

하지만 제 경우에는 /Download보안 문제일 수도 있습니다.

그렇다면 어떻게 그들의 조언을 따를 수 있을까요?

모든 디렉터리에서 소프트웨어 응용 프로그램을 실행할 수 있도록 특정 디렉터리의 bin 하위 디렉터리를 PATH에 추가하는 방법입니다.

답변1

GNU를 언급하신 이후로 stow...

GNU를 사용하면 디렉토리를 비슷한 위치로 이동할 stow수 있습니다 (그리고 거기에 있습니다 ).jchemsuite$HOME/local/stow$HOME/local/stow/jchemsuite

그 다음에:

cd "$HOME/local/stow"
stow -v jchemsuite

그런 다음 쉘의 시작 파일을 편집하여 (일반적으로 또는 Linux를 사용하는 경우) 해당 파일이 $HOME/local/bin자신의 것인지 확인하십시오.PATH~/.bash_profile~/.bashrc

PATH="$PATH:$HOME/local/bin"

다음 새 셸 세션에서는 전체 경로를 지정하지 않고도 JChem 바이너리를 사용할 수 있습니다.

JChem 바이너리를 제거하고 삭제하려면:

cd "$HOME/local/stow"
stow -Dv jchemsuite
rm -rf jchemsuite

이는 JChem이 실제로 jchemsuite디렉터리 이동을 허용한다고 가정합니다(코드 내부의 원래 경로를 통해 이를 참조할 수 있음). 그렇지 않다면 그냥 설정 PATH하세요.

 PATH="$PATH:/path/to/JChem/jchemsuite/bin"

내 생각엔 그들이 이런 것 같아예상되는사람들이 하고 싶어하는 일들.

답변2

bash를 사용한다고 가정하고 다른 쉘을 사용하는 경우 지정해 주시면 예제를 업데이트하겠습니다.

파일을 엽니다 .bashrc(예: 홈 폴더에 있어야 함 /home/youruser).

예를 들어emacs ~/.bashrc

그런 다음 마지막 줄로 이동하여 다음을 추가합니다.

export PATH=/path/to/bin:/another/path/to/bin:$PATH

이렇게 하면 PATH환경 변수에 원하는 것을 추가할 수 있으며 시스템의 기본값을 유지하게 됩니다.

변경 사항을 적용하려면 로그아웃했다가 다시 로그인해야 합니다(환경 변수는 로그인 시 파일이 .bashrc"실행"되기 때문에 로그인 시 정의됩니다).

에 정의된 내용을 보려면 PATH다음을 실행하세요.echo $PATH

관련 정보