Pythonでファイルをコピー、移動、削除する方法

 

こんにちは。のっくん(@yamagablog)です。

 

この記事では、Pythonでファイルを操作(移動、コピー、削除)する方法をご紹介します。

 

「大量のファイルを移動させたい、コピーさせたい」

 

そんな時はPythonで書くのがオススメですよ。

 

スポンサーリンク

 

ファイルのコピー、移動

 

shutil(shell utilities)はファイル操作用のモジュールです。ファイルをdeliciousディレクトリにコピー、移動させてみます。

 

ファイルのコピー

 

ファイルの移動

 

ファイルをゴミ箱に移動する

 

ハードディスクから削除するのではなく、ゴミ箱に移動させるコードを書いてみましょう。

 

send2trashというモジュールを使います。

 

 

openの時に指定しているa(append)は追記するという意味ですが、ファイルが存在しなければ新規に作ってくれます。

 

Tips
Ubuntuのゴミ箱は、「$HOME/.local/share/Trash」にあります。bacon.txtはその中のfilesというフォルダに移動しているはずです。

 

ディレクトリツリーを表示する

 

ディレクトリを指定して、その中に入っているサブフォルダやファイルを全て表示させたい時があります。

 

普通はこのプログラムを書くのは大変ですが、pythonだと簡単に実行できます。

 

まずは、Ubuntuで適当なフォルダdeliciousを作ります。その下にフォルダとファイルを適当に作成して以下のような構成にしました。

 

 

Tips

treeコマンドは「sudo apt install tree」でインストールできます。

Ubuntu18.04で「Unable to locate package」エラーが出る場合は、下のようにuniverseレポジトリを追加してから実行しましょう。

 

それではPythonでコードを書いてみます。

 

 

実行すると以下の通りに出力されます。

 

 

まとめ

 

記事のまとめ
・shutilモジュールを使うと、ファイルのコピーや移動ができる
・send2trashモジュールを使うと、ゴミ箱に移動ができる
・os.walk()関数を使うと、ディレクトリの中身を全て表示できる

 

参考

ABOUTこの記事をかいた人

のっくん

理系院卒で大企業の研究所に就職。 趣味はプログラミング、レアジョブ英会話、筋トレ、旅行。 Twitter:@yamagablog