사람들은에 추가 .
를 제안 PATH
했습니다.이 경우 위험 할 수 있습니다.이 파일은 실수로 세계 기록 가능한 디렉토리에 설치된 악성 프로그램을 실행할 위험이 있습니다. 당신은 당신이 소유 몇 디렉토리에 실행 프로그램을 가지고 만 쓰기 권한이있는 경우 그러나, 그것은 안전 (매우 안전?)입니다 넣어 그 이사 (들)을 에 PATH
같은 줄을 추가하여,
PATH=$PATH:~/dev/myprog1:~/dev/myprog2
당신에 ~/.bashrc
파일. 물론 이것은 파일 시스템의 어느 곳에서나 해당 디렉토리 중 하나에서 프로그램을 실행할 수 있음을 의미합니다. 예를 들어,을 cd /etc
입력 foo
하고 실행할 수 있습니다 ~/dev/myprog1/foo
. 이것은 하나 이상의 디렉토리에 같은 이름의 프로그램을 가질 수 없다는 사소한 단점이 있습니다. 특히 및 foo
에서 호출 된 프로그램이있는 경우 경로를 지정하지 않으면 두 번째 프로그램을 실행할 수 없습니다. 마찬가지로 당신이 -하지만 왜 당신이 원하십니까?~/dev/myprog1
~/dev/myprog2
~/dev/myprog1/cat
이 작업을 수행하는 프로그램이 몇 개인 경우 다른 접근 방식은 해당 프로그램의 별명을 정의하는 것입니다.
alias gizmo='./gizmo'
alias gonzo='./gonzo'
아니면 별칭을 호출 할 수 있습니다 .gizmo
그리고 .gonzo
당신이 경우 그보다 직관적를 찾을 수 있습니다.
실제로 이것은 어느 정도까지는 보안 위험 .
이 있습니다 PATH
. 악의적 인 사용자가 사용자를 읽고 .bashrc
별명을 볼 수 있다면, 사용자가 원하는 대로 멀웨어 gizmo
및 gonzo
임의의 디렉토리에 맬웨어를 넣을 수 있습니다 . 이 경로를 절대 경로 이름으로 사용하는 것이 좋습니다.
alias gizmo='~/dev/myprog1/gizmo'
alias gonzo='~/dev/myprog2/gonzo'
그건 그렇고, 실행 파일 test
은 셸 내장 명령이기 때문에 실행 파일 이름을 피해야 하며 경로 또는 다른 트릭을 지정해야만 해당 이름으로 프로그램을 실행할 수 있습니다.