Linux에서 Python을 사용하여 새 디렉터리 만들기

Linux에서 Python을 사용하여 새 디렉터리 만들기

Ubuntu 20.04.2를 새로 설치하여 Python 스크립트를 실행하고 있습니다. 스크립트는 디렉토리가 존재하는지 확인하고 존재하지 않으면 디렉토리를 생성합니다. 코드는 다음과 같습니다

os.makedirs(f'..{os.sep}logs{os.sep}')

다음 오류가 발생합니다.

PermissionError: [Errno 13] Permission denied: '../logs/'

명령 프롬프트에서 sudo만 추가하면 되지만 이러한 디렉터리를 만들려면 Python 스크립트가 필요합니다. 따라서 Python에서 새 디렉터리를 만들 수 있도록 하려면 어떻게 해야 합니까?

답변1

간단한 대답은: 그렇지 않습니다. 스크립트에서 높은 권한을 요청하고 얻을 수 있다고 확신하지만 이를 수행하는 일반적인 방법은 스크립트를 실행하는 사람이 스크립트에서 변경해야 하는 내용에 액세스할 수 있다고 가정하는 것입니다. 결국 사용자에게 권한이 없으면 사용자는 애초에 스크립트를 실행할 비즈니스가 없습니다.

따라서 스크립트를 작성하고 사용자가 원하는 작업을 수행할 수 있는 권한이 있는지 확인하도록 맡기십시오. 대신 스크립트를 수정하여 오류를 포착하고 보다 유익한 오류 메시지를 제공하여 사용자가 액세스해야 하는 디렉터리와 액세스 종류를 알 수 있도록 해야 합니다. 따라서 대신 ../log전체 경로를 가져오고 "권한 거부됨" 대신 필요한 권한을 확인하고 작업을 시도하기 전에 테스트하십시오. 이렇게 하면 오류를 정상적으로 처리하고 사용자에게 필요한 것을 알릴 수 있습니다.

관련 정보