파일 복사 위치 Python: Shutil.copy(), Shutil.copystat() 메소드
Python 파일 복사 방법
Python 파일을 쉽게 복사할 수 있는 기능을 내장하고 있습니다. Opera시스템 셸 유틸리티를 사용합니다.
다음 명령은 파일을 복사하는 데 사용됩니다.
shutil.copy(src,dst)
다음 명령은 메타데이터 정보가 포함된 파일을 복사하는 데 사용됩니다.
shutil.copystat(src,dst)
파일을 복사하는 방법 Python
파일을 복사하는 단계는 다음과 같습니다. Python Shutil copy() 메소드를 사용하여:
단계 1) 현재 디렉터리의 원래 경로를 캡처합니다.
파일을 복사하기 전에 현재 디렉터리에 있는 원본 파일의 경로를 가져와야 합니다. 코드에서 –
- 변수 선언
- 변수에 분할 기능 적용
코드 설명
- 먼저 “guru99.txt” 파일이 존재하는지 확인하겠습니다. 이전에 guru99.txt 파일을 생성했으므로 해당 파일이 존재한다는 것을 알고 있으며 코드를 계속 진행하겠습니다.
- 파일 경로를 '변수에 저장합니다.SRC"파일이 존재하는 경우
- 경로를 얻은 후에는 경로와 파일 이름을 분리합니다.
- 이를 위해 분할을 사용하겠습니다.
path.split
소스 변수에 대한 함수 - 실행될 때 코드는 "파일 이름"및"파일 경로"따로
단계 2) Shutil 모듈을 사용하여 기존 파일의 복사본을 만듭니다.
Shutil 모듈을 사용하여 기존 파일의 복사본을 만듭니다. 여기서는 기존 파일 "guru99.txt"의 복사본을 만들었습니다.
코드 설명
- 원본 파일 이름 "guru99.txt"를 선택하고 "guru99.txt.bak" 끝에 문자 .bak를 추가합니다. .bak 확장자를 가진 이 이름은 중복 사본이 될 것입니다.
- 그런 다음 유틸리티의 복사 기능을 사용하여 소스에서 대상으로 복사해 보겠습니다.
- 코드를 실행하면 패널 오른쪽에 확장명이 .bak인 중복 파일이 생성되는 것을 볼 수 있습니다.
단계 3) 파일, 파일 권한 및 기타 정보와 관련된 메타데이터 복사
복사 기능은 파일의 내용만 복사하며 다른 정보는 복사하지 않습니다. 복사하려면 메타 데이터 파일과 관련된 파일 권한 및 기타 정보를 사용해야 합니다.카피스타트" 기능. 이 코드를 실행하기 전에 복사 파일 "guru99.text.bak"를 삭제해야 합니다.
파일을 삭제하고 프로그램을 실행하면 .txt 파일의 복사본이 생성되지만 이번에는 다음과 같은 모든 정보가 포함됩니다. 파일 권한, 수정 시간 및 메타데이터 정보. OS 셸로 이동하여 정보를 확인할 수 있습니다.
다음은 코드입니다.
import os import shutil from os import path def main(): # make a duplicate of an existing file if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); #seperate the path from the filter head, tail = path.split(src) print("path:" +head) print("file:" +tail) #let's make a backup copy by appending "bak" to the name dst = src+".bak" # nowuse the shell to make a copy of the file shutil.copy(src, dst) #copy over the permissions,modification shutil.copystat(src,dst) if __name__=="__main__": main()
단계 4) 정보 가져오기
마지막으로 수정된 텍스트 파일에 대한 정보를 가져올 수 있습니다.
-
코드 라인 #15- .txt 파일(guru99)이 마지막으로 수정된 날짜, 월, 년도, 시간을 알려줍니다. 경로 모듈을 사용하여 파일 수정 시간 세부 정보를 가져온 다음 시간 클래스 c 시간 함수 읽을 수 있는 시간으로 변환합니다. 그래서 코드를 실행하면 파일 guru99.txt가 마지막으로 수정된 날짜를 볼 수 있습니다. 8월 XNUMX일 월요일th 13년 35시 2018분.
-
코드 라인#17 - 파일 수정에 대한 정보를 제공하는 것과 동일한 작업을 수행하지만 이를 표시하는 형식이 다릅니다. 여기서 우리는 수정 시간 가져오기 기능 (path.getmtime(“guru99.txt”)). 이제 c time 함수를 사용하는 대신에 우리는 타임 스탬프 기능에서 날짜 시간 객체를 구성하겠습니다. 출력에서 파일 수정 시간 세부 정보가 다른 형식으로 인쇄되는 것을 볼 수 있습니다. 2018-01-08, 13:35:51.334072
다음은 코드입니다.
# # Example file for working with o.s path module import os from os import path import datetime from datetime import date, time, timedelta import time def main(): # Get the modification time t = time.ctime(path.getmtime("guru99.txt.bak")) print(t) print(datetime.datetime.fromtimestamp(path.getmtime("guru99.txt.bak"))) if __name__ == "__main__": main()
요약
- 코드를 사용하여 기존 파일의 복사본을 만들려면 종료.복사(src,dst)
- 원본 파일의 모든 정보를 다음과 같은 복제 파일로 복사하려면 파일 권한, 수정 시간 또는 메타데이터 정보 코드를 사용하여 shutdown.copystat(src,dst)