2011-07-28 3 views
1

현재 프로그램에서 만든 임시 파일을 삭제하는 일부 코드가 있습니다.Mac에서 파이썬의 os.remove()와 동일한 기능이 있습니까?

# Delete the generated files 
exts = [".lsys", ".py", ".pyc"] 
for ext in exts: 
    os.remove("{0}{1}{2}".format(self.grammarDir, filename, ext)) 

이제 Mac으로 응용 프로그램을 이식하려고합니다. 파이썬 2.7에 대한 documentation를 살펴보면,

파일 경로를 제거 (삭제)합니다. path가 디렉토리이면 OSError는 가됩니다. 디렉토리를 제거하려면 아래의 rmdir()을 참조하십시오. 이것은 아래에 문서화 된 unlink() 함수 인 과 동일합니다. Windows에서 사용중인 파일을 제거하려고 시도하면 예외가 발생합니다. Unix에서는 디렉토리 항목이 제거되지만 파일에 할당 된 저장소는 원본 파일이 더 이상 사용이되지 않을 때까지 사용할 수 없습니다.

Availability: Unix, Windows. 

Mac 용 os.remove()에 해당합니까? 아니면 이와 비슷한 것을 사용하고 있습니까?

os.system("rm {0}{1}{2}".format(self.grammarDir, filename, ext)) 

Mac과 호환이 필요하고 우분투와의 호환성을 유지하는 것이 엄청난 보너스가 될 것입니다 (꼭 필요한 것은 아닙니다).

편집 :

글쎄, 지금 나는 어리 석다. 삭제 코드에 도달하지 않았으므로이 코드 세그먼트 위에 끊어진 전화가 있음을 알 수 있습니다. 실수가있는 곳에서 오진 된 경우, 조용히 실패하고 있다고 생각했습니다.

+3

Mac OS는 유닉스입니다. os.remove가 작동합니다. – utdemir

+1

근대 (OSX) 맥은 기본적으로 유닉스이기 때문에 당연히 맥에서도 사용할 수 있다고 가정합니다. 그것을 시도하고 그것을 작동하지 않았다; 또는 OSX 이전 Mac을 의미합니까? – delnan

+0

시도해 보셨습니까? OS X은 Linux를 기반으로합니다. – FishBasketGordo

답변

6

Mac OS X도 유닉스입니다.

별도로 언급 그렇지 않은 경우 항 모든 기능의 "가용성 : 유닉스" 는 유닉스 코어에 기반 맥 OS X에서 지원하는 연결 documentation의 상단에서.

+1

그리고 나는 그것을 완전히 놓쳤습니다. 삭제 코드에 도달하지 않았으므로이 코드 세그먼트 위에 끊어진 전화가 있음을 알 수 있습니다. 내 오류를 오진했는데, 그것이 조용히 실패하고 있다고 생각했습니다. – thegrinner

4

유닉스는 맥과 리눅스를 의미한다. Python을 빌드 할 수있는 모든 Unix-like/POSIX 호환 시스템.

+1

지상에서 누가 이것을 투표 했나요?! 보상하려면 +1하십시오! –

3

os.remove은 Windows 및 Unix에서 사용할 수 있습니다. 최대 OSX는 Unix로 계산되므로 Mac OSX에서는 os.remove을 사용할 수 있습니다. 당신이 연결된 documentation에서

: 별도로 언급하지 않으면

항 모든 기능의 "가용성 : 유닉스는"유닉스 코어에 기반 맥 OS X에서 지원된다.

관련 문제