2011-12-19 3 views
0

필자는 목적에 맞는 쉘 스크립트 시리즈를 작성했습니다. 문제는 사용 권한 (?)입니다. 이 스크립트는 문제없이 Linux 호스트와 Windows XP 호스트에서 모두 실행됩니다.cygwin을 사용하는 Windows 7의 이상한 특권 문제

그러나 Windows 7에서는 문제가 발생하여 그 이유를 알 수 없습니다.

이 스크립트가 수행하는 첫 번째 작업은 스크립트 자체와 동일한 디렉토리에있는 파일 (source utils.conf)을 소스로 보내는 것입니다. 그러나 스크립트가 호출되면 출력은 다음과 같습니다.

source: utils.conf: file not found 

그리고 스크립트 barfs (설계 기준)입니다. 그것은 "허가가 거부되었습니다"라고 말하지 않고 "파일을 찾을 수 없습니다"라고 말합니다. 그리고 이것은 오타가 아니며 file not found이 아니고 no such file or directory이 아닙니다.

하지만 ... 프롬프트 및 유형에 나는 경우

(source utils.conf; echo $SOMEVARFROMTHATFILE) 

그것은 확인을 작동!

무엇보다 GUI에서 사용자가 모든 관련 파일을 읽고 실행할 수있는 권한이 있는지 확인했습니다.이 경우입니다.

왜 스크립트가 작동하지 않습니까?

+0

이 권한으로 무엇이든을 가지고 위의 아무 표시가 없습니다. 왜 그렇게 생각하니? 프롬프트에서'source nonexistentfile'을 입력하면 어떻게됩니까? Bash 3과 4에서'bash : nonexistentfile : No such file or directory'를 얻습니다. 대신에'파일을 찾을 수 없다 '는 것이 이상하다. –

+0

_does_ "파일을 찾을 수 없습니다"라고 말하십시오! – fge

답변