2013-02-12 4 views
3

쉘 스크립트에서 만든 실행 파일을 시작하는 데 문제가 있습니다. 여러 명령 줄 옵션으로 여러 번 프로그램을 실행하여 테스트를 자동화하여 작동하는지 확인하고 싶습니다.쉘 스크립트에서 실행 파일 실행

echo $SHELL을 입력하면 /bin/sh이 표시됩니다.

다음

내 쉘 스크립트입니다

#!/bin/sh 
clear 
echo "Running first test." 
./myProgram 
exit 0 

내가 같은 디렉토리에 myProgram으로 스크립트 (sh myScript.sh)를 실행하면, 나는 다음과 같은 출력을 참조하십시오를 실행할 때

Running first test. 
: not foundsh: line 4: 

을 프로그램 ./myProgram, 명령 줄 옵션없이 예상대로 실행됩니다.

나는 또한 시도 : myProgram ./myProgram & 답변에 다소 비슷한 질문을 기반으로 myProgram & 하지만, 위의 오류 메시지에서 그들은 모두 결과.

+0

myScript.sh와 myProgram은 같은 디렉토리에 있습니까? 그렇다면 간단히 해당 디렉토리로 변경하고 ./myScript.sh를 실행하십시오 (즉, 첫 번째 sh가없는 경우). 또한, [Unix and Linux] (http://unix.stackexchange.com/)에 게시하면 도움이 될 것입니다. –

답변

4

개 글자가 잘못되었습니다. 수정하려면 dos2unix을 사용하십시오.

1

전체 경로를 사용해 보시지 않겠습니까? 예 : myProgram이/home/user1/bin에있는 경우 ./myProgram 대신/home/user1/bin/myProgram을 시도 할 수 있습니다. 이것은 효과가있다.

경로 변수 $ PATH에 경로를 추가하고 어디에서든지 myProgram을 직접 호출 할 수도 있습니다.

터미널에서 "export PATH = $ PATH :/home/user1/bin"을 따옴표없이 실행하십시오. 이것은 현재의 단기 세션에만 영향을줍니다. 경로를 영구적으로 추가하려면 다음 줄을 사용하여 홈 디렉토리의 .bashrc 파일을 업데이트하십시오.

관련 문제