내 가상 머신에 없이 실행하고 싶은 스크립트가 있습니다.[]$ ./myscript
[studentuser@CentosStudentSvr ~]$ myscript
-bash: iduser: 명령을 찾을 수 없습니다
그렇지 않으면 오류가 발생합니다.
-bash: iduser: command not found
어떻게 고칠 수 있나요?
감사합니다
답변1
다음을 입력하면 myscript
쉘은 PATH에서 이름이 지정된 명령을 찾을 수 있는지 확인합니다 myscript
. Windows와 달리 현재 디렉터리는 기본적으로 경로에 없습니다.
이는 다음 중 하나를 원한다는 것을 의미합니다.
- 지금은 경로에 추가하십시오 (상호적으로)
- 시작할 때마다 경로에 추가하십시오(폴더에서 시작 스크립트를 편집하십시오. 어떤 스크립트는 사용하는 쉘에 따라 다릅니다. 종종 .profile 또는 .bashsomething).
- 또는 바이너리의 전체 경로를 지정하십시오. 예를 들어
./iduser
또는/home/user229525/iduser
.
현재 디렉터리( .
)가 이미 경로에 있으면 프로그램을 확인하세요.
- 실행 가능합니까? (ls -l, rwx에서 검색
x
) - 대본이라면 셔뱅으로 시작하나요? (예: 첫 번째 줄입니다
#!/usr/bin/env bash
).
답변2
Bash는 $PATH 변수에 열거된 경로에서 "명령"을 찾습니다. $PATH에 언급된 폴더나 다른 폴더로 스크립트를 이동합니다 /usr/bin
(또는 스크립트가 있는 폴더를 $PATH에 추가).
또한 bash 실행에 대한 별칭을 정의할 수도 있습니다 alias myscript="bash /path/to/script/myscript"
. (구문을 직접 확인하십시오. 지금은 확실하지 않습니다.)