우분투 리눅스 12.04 LTS의 디렉토리에 run.sh가 있습니다. 나는 디렉토리 구조의 다른 곳에서 바이너리를 "볼" 수 있도록 Path 변수를 변경해 왔습니다. 하지만 전체 경로를 지정해도 여전히 명령을 찾을 수 없습니다. 저는 리눅스에 대한 기본적인 실무 지식만 가지고 있습니다. 무슨 일이야? 왜 run.sh를 볼 수 없나요?
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ sudo /home/memsql/voltdb/doc/tutorials/helloworld/run.sh
sudo: /home/memsql/voltdb/doc/tutorials/helloworld/run.sh: command not found
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ ls
Client.class deployment.xml Insert.class log run.sh Select.java
Client.java helloworld.sql Insert.java README Select.class statement-plans
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ pwd
/home/memsql/voltdb/doc/tutorials/helloworld
답변1
실행 가능하게 만든 chmod a+x run.sh
다음 다시 시도해야 합니다.
그러면 파일이 실행 가능해집니다.
답변2
파일이 실행 가능하지 않다는 점에서 다른 사람이 언급한 것일 가능성이 높습니다. 때로는 다른 것입니다.
shebang(또는 이에 상응하는 내용)이 올바르지 않은 경우 쉘 #!/bin/sh
보고서를 보았 file not found
거나command not found
~이다실행 파일이 있습니다. 내가 봤을 때 그것은 /usr/bin에 있던 #!/usr/local/bin/perl
Perl 스크립트의 경우였습니다.perl
그냥 내가 이 다른 잠재적인 원인을 던질 것이라고 생각했습니다.