다음 코드가 작동하지 않는 이유는 무엇입니까?
#!/bin/sh
PATH=$PWD/Info
defaults read $PATH
실행할 때마다 나는 얻는다.
./script: 3행: 기본값: 명령을 찾을 수 없습니다.
한 줄로 수행하면 작동합니다.
defaults read $PWD/Info
그런 건 괜찮아요. 그냥 궁금해서요.
답변1
$PATH
특수 변수인 을(를) 변경하고 있기 때문입니다 . 쉘은 실행 가능한 프로그램을 검색하기 위해 PATH를 사용합니다. defaults
아마도 그 중 하나일 것입니다. 그러나 PATH에서 해당 폴더를 제거한 후에는 쉘이 더 이상 해당 폴더를 실행할 수 없습니다.
답변2
경로를 바꾸는 대신 경로에 추가하세요.
PATH=$PWD/Info:$PATH