工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Python

Python shutil.copy()とshutil.copystat()でファイルをコピー

Python shutil.copy()とshutil.copystat()でファイルをコピー

Pythonのshutilモジュールは、ファイルのコピーとメタデータ保持のための直感的な関数を提供します。主なユーティリティはshutil.copy()とshutil.copystat()の2つです。

copy(src, dst)

srcにあるファイルをdstにコピーします。ファイル内容は複製されますが、ファイル権限とタイムスタンプは保持されません。

copystat(src, dst)

srcからdstへ、権限、タイムスタンプ、その他OS固有の属性を含むファイルメタデータをコピーします。copy()成功後に呼び出すことで、完全なファイル状態を再現します。

ステップバイステップ例

  1. ソースファイルの特定
    カレントワーキングディレクトリにguru99.txtが存在することを確認し、絶対パスを取得。

Python shutil.copy()とshutil.copystat()でファイルをコピー

import os
from os import path
src_path = path.realpath("guru99.txt")
print("ソース:", src_path)
  1. バックアップ名の作成
    元のファイル名に.bakを追加してデスティネーションパスを作成。
dst_path = src_path + ".bak"
print("デスティネーション:", dst_path)
  1. ファイル内容のコピー
    shutil.copy()でファイルデータを複製。
import shutil
shutil.copy(src_path, dst_path)
  1. メタデータのコピー
    コンテンツコピー後、元ファイルの権限とタイムスタンプを複製。
shutil.copystat(src_path, dst_path)
  1. コピーの検証
    os.path.getmtime()でバックアップファイルの最終更新時刻を表示。
import datetime
mod_time = path.getmtime(dst_path)
print("最終更新:", datetime.datetime.fromtimestamp(mod_time))

スクリプト実行で、元ファイルと同じ権限とタイムスタンプを持つguru99.txt.bakが同ディレクトリに作成されます。

実践的なヒント

まとめ

Python

  1. Python データ型マスター: 実践ガイド
  2. Python 演算子完全マスター: 包括的ガイド
  3. Python pass文完全マスター: 実践ガイド
  4. Python 関数引数完全マスター: 位置引数・キーワード引数・デフォルト引数
  5. Python辞書完全ガイド:作成、操作、高度なテクニック
  6. PythonファイルI/O:ファイル操作、読み書き、管理のマスター
  7. Python len()関数:オブジェクトの長さを測る実践ガイド
  8. Python String.find()メソッド完全ガイド:構文、例、代替手法
  9. Pythonでファイル・ディレクトリの存在確認:実践ガイド
  10. Python JSON:エンコード、デコード、ファイル処理の実践ガイド
  11. PythonファイルI/O:入出力操作をマスターする