개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.31 09:27

ssh2_sftp_rmdir 함수 사용에 어려움을 겪고 있습니다

목록
  • 몽고DB러버 1일 전 2025.07.31 09:27
  • 3
    1
제가 현재 SSH2 SFTP 라이브러리를 사용하여 SFTP 서버에 디렉토리를 삭제하는 코드를 작성중인데, rmdir 함수를 사용할 때 에러가 발생하고 있습니다.

rmdir 함수에 대한 문서를 읽어보았지만, 디렉토리가 비어있지 않은 경우에 에러가 발생한다고 하였습니다.

디렉토리 안에 파일이 있는 경우 rmdir 함수를 사용할 수 없나요?

디렉토리 안에 파일이 있는 경우 어떻게 해야 하나요?

그리고 디렉토리를 삭제하기 전에 파일을 삭제하는 방법은 무엇인가요?

디렉토리 안의 모든 파일을 삭제한 후에 디렉토리를 삭제하는 방법은 무엇인가요?

ssh2_sftp_rmdir 함수를 사용하여 디렉토리를 삭제하는 코드를 예시로 보여주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    디렉토리 안에 파일이 있는 경우 rmdir 함수를 사용할 수 없습니다. 디렉토리 안에 파일이 있는 경우, 디렉토리 안의 모든 파일을 삭제한 후에 디렉토리를 삭제해야 합니다.

    디렉토리 안의 모든 파일을 삭제하는 방법은 다음과 같습니다.

    1. 디렉토리 내의 모든 파일을 ls 함수를 사용하여 목록으로 가져옵니다.
    2. 가져온 파일 목록을 반복하여 unlink 함수를 사용하여 파일을 삭제합니다.
    3. 디렉토리 삭제를 위해 rmdir 함수를 사용합니다.

    디렉토리 삭제하기 전에 파일을 삭제하는 방법은 다음과 같습니다.

    1. 디렉토리 내의 모든 파일을 ls 함수를 사용하여 목록으로 가져옵니다.
    2. 가져온 파일 목록을 반복하여 unlink 함수를 사용하여 파일을 삭제합니다.
    3. 디렉토리 삭제를 위해 rmdir 함수를 사용합니다.

    디렉토리 안의 모든 파일을 삭제한 후에 디렉토리를 삭제하는 방법은 다음과 같습니다.

    1. 디렉토리 내의 모든 파일을 ls 함수를 사용하여 목록으로 가져옵니다.
    2. 가져온 파일 목록을 반복하여 unlink 함수를 사용하여 파일을 삭제합니다.
    3. 디렉토리 삭제를 위해 rmdir 함수를 사용합니다.

    ssh2_sftp_rmdir 함수를 사용하여 디렉토리를 삭제하는 코드 예시는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $sftp = ssh2_sftp('localhost');
    
    $dir = '/path/to/directory';
    
    
    
    // 디렉토리 내의 모든 파일을 삭제합니다.
    
    $files = ssh2_sftp_opendir($sftp, $dir);
    
    while ($file = ssh2_sftp_readdir($files)) {
    
        if ($file != '.' && $file != '..') {
    
            ssh2_sftp_unlink($sftp, $dir . '/' . $file);
    
        }
    
    }
    
    ssh2_sftp_closedir($files);
    
    
    
    // 디렉토리를 삭제합니다.
    
    ssh2_sftp_rmdir($sftp, $dir);
    
    


    위 코드는 디렉토리 내의 모든 파일을 삭제한 후에 디렉토리를 삭제합니다.

    2025-07-31 09:28

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 40,560건 / 6 페이지

검색

게시물 검색