bin
내 $HOME
(일반 사용자) 디렉토리 에 수동으로 설치된 일부 바이너리를 실행하려고 합니다 .
파일이 다음 위치에 있고 /home/user/bin
실행 권한이 있습니다.
$ ls -la ~/bin/
total 120
drwxr-xr-x 2 my_user my_user 4096 déc. 8 12:04 .
drwxr-xr-x 94 my_user my_user 4096 déc. 8 12:23 ..
-rwxr-xr-x 1 my_user my_user 4843 déc. 8 12:04 dplx
-rwxr-xr-x 1 my_user my_user 6515 déc. 8 12:04 dprint
-rwxr-xr-x 1 my_user my_user 2123 déc. 8 12:04 dprintm
-rwxr-xr-x 1 my_user my_user 15494 déc. 8 12:04 duplex
-rwxr-xr-x 1 my_user my_user 6501 déc. 8 12:04 kmprb
-rwxr-xr-x 1 my_user my_user 11069 déc. 8 12:04 kmprb_one
-rwxr-xr-x 1 my_user my_user 5543 déc. 8 12:04 krmpq
-rwxr-xr-x 1 my_user my_user 8267 déc. 8 12:04 mpr
-rwxr-xr-x 1 my_user my_user 25452 déc. 8 12:04 mprb
-rwxr-xr-x 1 my_user my_user 2953 déc. 8 12:04 pqnext
-rwxr-xr-x 1 my_user my_user 896 déc. 8 12:04 rmpq
(이것은 데비안의 기본값입니다) 에 대한 호출을 포함합니다 ~/.profile
.~/bin
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
그러나 재부팅 후 바이너리가 인식되지 않습니다.
$ duplex
bash: duplex : commande introuvable
두 번째는 작동 source .bashrc
하지만 source .profile
터미널에서만 작동합니다(터미널을 닫고 새 터미널을 다시 열면 명령이 더 이상 인식되지 않습니다).
이러한 바이너리를 어떻게 영구적으로 설치합니까?
답변1
이 파일은 profile
시작 시 모든 쉘에서 읽도록 설계되었습니다.로그인껍데기. 시스템 전체 /etc/profile
(및 /etc/profile.d) 또는 사용자가 추가한 파일 ~/.profile
.
대화형 비로그인 쉘의 경우(대부분의 쉘) file(s) 을 사용해야 합니다 .bashrc
.
코드를 이동하면 됩니다.
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
에서부터 .~/.profile
~/.bashrc
또는 실제로는 권장하지 않는 대체 소스 ~/.profile
가 ~/.bashrc
.
파일이 어떻게 사용되는지 더 잘 이해하려면이 사진 좀 봐.