Linux/mac에서 동일한 프로그램에 대해 다른 바이너리에 매핑하는 방법은 무엇입니까?

Linux/mac에서 동일한 프로그램에 대해 다른 바이너리에 매핑하는 방법은 무엇입니까?

which Rreturn 을 가정 /opt/anaconda3/bin/R하고 다른 위치에 다른 바이너리가 있고 를 R입력할 때 다른 R 바이너리가 실행되기를 원한다고 가정합니다 R.

어떻게 하면 그렇게 할 수 있나요?없이

  • R 바이너리 중 하나 삭제
  • 파일 옮기기

제대로 작동했는지 확인하려면 R실행해야 합니다 /some/other/location/R(그리고 which R를 반환합니다 /some/other/location/R).

답변1

몇 가지 선택 사항이 있습니다.

  • 변수를 변경하여 PATH디렉터리를 다른 순서로 검색하도록 합니다. 이는 디렉토리에 있는 모든 프로그램에 영향을 미칩니다.
  • Debian에서는 Debian 대안(Debian 및 파생 제품)을 사용하세요. 때로는 유용할 때도 있습니다.
  • 디렉토리 를 설정하고 /opt/bin-override이를 의 헤드에 추가한 PATH다음 실행하려는 명령의 심볼릭 링크를 추가하세요.
  • ~/.bash_aliases또는 /etc/bash.bashrc예 를 들어 별칭을 추가하십시오 .
    alias R="/some/other/location/R"

관련 정보