Pythonでのコピー!移動!削除!




ツールを作っている時に、ファイルをコピーしたいなーとか、作業ファイルを削除したいなーとか

ありますよね
(*´ω`*)

今回は、ファイル・ディレクトリのコピー、移動、削除の方法をご紹介します!しかし、ツールを作っている時に、ファイルの移動・削除は、、、

ハラハラしますね
(;´∀`)

ディレクトリの作成

Pythonで新しくフォルダを作成する方法です。フォルダを作成したいディレクトリが存在しないとエラーしてしまいます(;´∀`)

import os
os.mkdir('d:/temp')

指定したフォルダまでの階層をすべて作成したい場合は「makedirs」を使用します。

import os
os.makedirs('d:/temp/cache')

ファイルのコピー

普通のファイルコピーです。コピー先のディレクトリが存在しないとコピーできません(゚A゚;)また、ファイルの作成時間や変更時間などのメタデータはコピーしません。

import shutil
shutil.copyfile('コピー元', 'コピー先')
import shutil
shutil.copy('コピー元', 'コピー先')

メタデータを含めたコピーをしたい場合は、「copy2」を使用します。

import shutil
shutil.copy2('コピー元', 'コピー先')

フォルダの中身すべてコピー

1つ1つコピーするのは大変!そんな時は、フォルダごとまとめてコピーするとイイでしょう(*´ω`*)b

しかし、既にあるフォルダにコピーしようとするとエラーがでます(´;ω;`)

import shutil
shutil.copytree('コピー元', 'コピー先')

既にあるフォルダにコピーしたい場合は、以下のようにします∠( ゚д゚)/

from distutils import dir_util
dir_util.copy_tree('コピー元', 'コピー先')

(ちょっと覚えにくいですね、、、)

ファイル・ディレクトリの移動

ファイル・ディレクトリを移動する場合は、以下のようにします。

既にあるフォルダに移動するときは、上書きされます。また、存在しないディレクトリに移動させた場合、中間の階層も作成されます。

import shutil
shutil.move('移動元のパス', '移動先のパス')

ファイルの削除

指定したファイルを削除したい場合は、以下のようにします。

import os
os.remove('ファイル名')

ディレクトリ削除

中身が空っぽのフォルダを削除する場合は、以下のようにします。ファイルやフォルダがあるとエラーしますのでご注意!

import os
os.rmdir('削除したいフォルダのパス')

いちいち中身を空にするなんてやってられません!いいから消して!っという場合は以下のようにします(*´ω`*)b

import shutil
shutil.rmtree('削除したいフォルダのパス')

これらの方法で消したファイルは、、、

ゴミ箱に入りません!

くれぐれも誤爆で消さないようにご注意を!!(`・ω・´)ゞ

ファイル・ディレクトリ名の変更

ファイル・フォルダの名前を変更するには、以下の様にします。

import os
os.rename('対象のファイル・フォルダのパス', '新しい名前のパス')

import os
os.rename('d:/temp', 'd:/tmp')







ABOUTこの記事をかいた人

たっくん

フリーランスのCG屋さん 兼 専門学校の非常勤講師。