Linux에서 내 run.sh 명령을 볼 수 없는 이유는 무엇입니까?

Linux에서 내 run.sh 명령을 볼 수 없는 이유는 무엇입니까?

우분투 리눅스 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/perlPerl 스크립트의 경우입니다.perl

또 다른 잠재적인 이유를 추가하겠다고 생각했습니다.

관련 정보