파이썬에서 파일을 복사하는 방법?

ItsMyCode |

shutil, os 및 하위 프로세스 모듈을 사용하여 Python에서 파일을 복사할 수 있습니다. 예제와 함께 각 모듈과 기능을 살펴보겠습니다.

Python에서 파일을 복사하는 모듈


  • 슈틸 모듈
  • OS 모듈
  • 하위 프로세스 모듈

  • shutil module top 파이썬에서 파일 복사


    shutil 모듈은 Python에서 파일을 복사하기 위해 사용하기 쉬운 몇 가지 복사 기능을 제공합니다.

    복사()


    copy() 메소드는 소스 파일을 대상 파일이나 디렉토리에 복사합니다. 파일 데이터와 파일 권한을 복사하고 새로 생성된 파일 경로를 반환합니다. 입력은 경로와 같은 객체 또는 문자열이어야 합니다.

    # Copy a file in Python using copy() method
    import shutil
    shutil.copy( '/src/test/source.txt' , '/dest/destination.txt' )
    


    카피2()


    copy2() 방법은 복사 방법과 동일하며, 그 외에도 모든 소스 파일 메타 데이터를 보존합니다.

    그러나 일부 운영 체제에서는 이 기능을 사용할 수 없습니다. 이 기능을 사용할 수 없는 플랫폼에서 copy2는 모든 메타데이터를 보존할 수 없는 경우에도 예외 없이 모든 메타데이터를 보존합니다.

    # Copy a file in Python using copy2() method
    import shutil
    shutil.copy2( '/src/test/source.txt' , '/dest/destination.txt' )
    


    카피파일()


    copyfile() 메서드는 소스 파일의 내용을 대상 파일에 복사합니다. 대상 파일은 쓰기 가능해야 하며 소스 파일과 이름이 같지 않아야 합니다. 그렇지 않으면 SameFileError가 발생합니다.

    # Copy a file in Python using copyfile() method
    import shutil
    shutil.copyfile( 'source.txt' , 'destination.txt' )
    


    copyfileobj()


    copyfileobj()는 파일 객체를 사용하여 소스 파일의 내용을 대상 파일에 복사합니다. 기본적으로 이 방법은 청크 단위로 데이터를 복사하며 길이 매개변수를 통해 버퍼 크기를 지정할 수도 있습니다.

    # Copy a file in Python using copyfileobj() method
    import shutil
    src_file=open('source.txt', 'rb')
    dest_file= open('target.txt' , 'wb')
    shutil.copyfileobj( src_file , dest_file )
    


    Python에서 파일을 복사하는 os 모듈



    팝펜()


    popen() 메서드는 cmd 명령에 대한 파이프를 만듭니다. 이 메서드는 cmd 파이프에 연결된 파일류 객체를 반환합니다. 이 명령은 터미널 창에서 명령을 실행하는 방법과 동일하게 작동합니다.

    창문에서

    # Copy a file in Python using popen() method
    import os
    os.popen('copy source.txt destination.txt' )
    


    리눅스에서

    
    # Copy a file in Python using popen() method
    import os
    os.popen('cp source.txt destination.txt' )
    


    체계()


    system() 메서드는 하위 셸에서 지정된 명령 인수를 실행합니다. system() 메서드의 반환 값은 프로그램을 실행하는 플랫폼에 따라 다릅니다.

    창문에서

    # Copy a file in Python using system() method
    import os
    os.system('copy source.txt destination.txt' )
    


    리눅스에서

    
    # Copy a file in Python using system() method
    import os
    os.system('cp source.txt destination.txt' )
    


    Python에서 파일을 복사하는 subprocess 모듈



    *전화() *



    * call() *방법은 운영 체제에서 명령을 실행하는 권장 방법입니다.

    구문 – subprocess.call(args, *, stdin=없음, stdout=없음, stderr=없음, shell=False)

    args 명령에는 실행해야 하는 셸 명령이 포함되어 있습니다. 기본적으로 shell 인수는 false로 전달됩니다. 이를 true로 전달하면 보안 위험이 발생할 수 있습니다.

    창문에서

    # Copy a file in Python using call() method
    import subprocess
    subprocess.call('copy source.txt destination.txt', shell=True )
    


    리눅스에서

    
    # Copy a file in Python using call() method
    import subprocess
    subprocess.call('cp source.txt destination.txt', shell=True )
    


    체크_출력()



    이* check_output() * 방법을 사용하면 쉘 내에서 명령을 실행할 수 있습니다. 기본적으로 stdout의 데이터를 인코딩된 바이트로 파이프한다는 점을 제외하면 subprocess.run 명령과 매우 유사합니다.

    창문에서

    # Copy a file in Python using ceck_output() method
    import subprocess
    subprocess.check_output('copy source.txt destination.txt', shell=True)
    


    리눅스에서

    
    # Copy a file in Python using check_output() method
    import subprocess
    subprocess.check_output('cp source.txt destination.txt', shell=True )
    


    게시물 How to Copy a File in Python?ItsMyCode에 처음 나타났습니다.

    좋은 웹페이지 즐겨찾기