Salin File ke dalam Python: metode shutil.copy(), shutil.copystat()
⚡ Ringkasan Cerdas
Python Modul shutil menyalin file. shutil.copy() menduplikasi isi file, sedangkan shutil.copystat() juga menyalin izin, waktu modifikasi, dan metadata. Di sini Anda akan mempelajari kedua metode tersebut dengan contoh langkah demi langkah.

Python Salin Metode File
Python menyediakan fungsi bawaan untuk menyalin file dengan mudah menggunakan Operating utilitas System Shell.
Perintah berikut digunakan untuk Menyalin File
shutil.copy(src,dst)
Perintah berikut digunakan untuk Menyalin File dengan Informasi MetaData
shutil.copystat(src,dst)
Cara Menyalin File di Python
Berikut langkah-langkah untuk menyalin file Python menggunakan metode shutil copy():
Langkah 1) Tangkap jalur asli di direktori saat ini
Sebelum kita menyalin file, kita perlu mendapatkan jalur ke file asli di direktori saat ini. Dalam kode –
- Mendeklarasikan variabel
- Menerapkan fungsi split pada variabel
Code Penjelasan
- Pertama kita akan memeriksa apakah file “guru99.txt” kita ada atau tidak. Karena kita telah membuat file guru99.txt sebelumnya, kita tahu file itu ada, dan kita akan melanjutkan lebih jauh dengan kodenya
- Kami menyimpan jalur file dalam variabel “src” jika file Anda ada
- Setelah kami mendapatkan jalurnya, kami akan memisahkan jalur dan nama file
- Untuk itu, kita akan menggunakan split
path.splitfungsi pada variabel sumber - Code saat dieksekusi akan mencetak “nama file"Dan"jalur file" terpisah
Langkah 2) Buat salinan file kami yang ada menggunakan modul shutil
Kami menggunakan Modul Shutil untuk membuat salinan file yang ada. Di sini kami biasa membuat salinan file yang ada “guru99.txt.”
Code Penjelasan
- Ambil nama file asli “guru99.txt” dan tambahkan huruf .bak di akhir “guru99.txt.bak”. Nama dengan ekstensi .bak ini akan menjadi salinan duplikat kami
- Dan kemudian kita akan menggunakan fungsi salin utilitas untuk menyalin dari sumber ke tujuan
- Saat Anda menjalankan kode, Anda akan melihat file duplikat dengan ekstensi .bak dibuat di sisi kanan panel
Langkah 3) Salin metadata yang terkait dengan file, izin file, dan informasi lainnya
Fungsi salin hanya menyalin isi file tetapi tidak ada informasi lainnya. Untuk menyalin data meta terkait dengan file, izin file, dan informasi lain yang harus Anda gunakan “copystat" fungsi. Sebelum kita menjalankan kode ini, kita harus menghapus file salinan “guru99.text.bak”.
Setelah Anda menghapus file dan menjalankan program, itu akan membuat salinan file .txt Anda tetapi kali ini dengan semua informasi seperti izin file, waktu modifikasi dan informasi metadata. Anda dapat membuka shell OS Anda untuk memverifikasi informasi.
Ini kodenya
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()
Langkah 4) Ambil informasinya
Anda dapat mengambil informasi tentang file teks yang terakhir diubah
-
Code Baris #15 - Ini menunjukkan hari, tanggal, bulan, tahun, dan waktu terakhir kali file .txt (guru99) dimodifikasi. Kita menggunakan modul path untuk mendapatkan detail waktu modifikasi file, dan kemudian kita akan menggunakan kelas waktu c fungsi waktu untuk mengubahnya menjadi waktu yang dapat dibaca. Jadi ketika kita menjalankan kodenya, kita dapat melihat file guru99.txt terakhir diubah Senin, 8 Januarith pada 13:35 2018.
-
Code Baris #17 - Ini melakukan hal yang sama, yaitu memberikan informasi tentang modifikasi file, tetapi memiliki format yang berbeda untuk menampilkannya. Di sini kita menggunakan Dapatkan fungsi Waktu Modifikasi (jalur.getmtime(“guru99.txt”)). Sekarang, alih-alih menggunakan fungsi waktu c, kita akan menggunakan Dari fungsi Stempel Waktu dan akan membuat objek tanggal waktu. Pada output, Anda dapat melihat detail waktu modifikasi file dicetak dalam format berbeda 2018-01-08, 13:35:51.334072
Ini kodenya
# # 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()





