【Python】 send2trash ファイルをゴミ箱に移動するモジュール【Mac】

2022年6月9日

Macのファイルをゴミ箱に移動するPythonのモジュール「send2trash」のインストール手順と、使い方を紹介します。このモジュールを使えば条件指定したファイル名を一括削除することができます。

send2trash インストール手順

「import send2trash」してみると、

エラーメッセージ「No module named 'send2trash’」、

ないことを確認。

sei@MacBook-Pro ~ % python3                                  
Python 3.8.9 (default, Jul 19 2021, 09:37:32) 
[Clang 13.0.0 (clang-1300.0.27.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import send2trash
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'send2trash'
>>> quit()

pip3コマンドでインストール

「pip3 install send2trash」

sei@MacBook-Pro ~ % pip3 install send2trash
Defaulting to user installation because normal site-packages is not writeable
Collecting send2trash
  Downloading Send2Trash-1.8.0-py3-none-any.whl (18 kB)
Installing collected packages: send2trash
  WARNING: The script send2trash is installed in '/Users/sei/Library/Python/3.8/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed send2trash-1.8.0

send2trash 使い方

>>> from send2trash import send2trash
>>> send2trash.send2trash('ゴミ箱に移動したいファイルパス/ファイル名')
>>> send2trash(['ファイル名1', 'ファイル名2'])

使用例

sei@MacBook-Pro ~ % python3      
Python 3.8.9 (default, Jul 19 2021, 09:37:32) 
[Clang 13.0.0 (clang-1300.0.27.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from send2trash import  send2trash
>>> import os
>>> os.listdir()
>>> send2trash('/Users/sei/Desktop/test.jpg')

ゴミ箱にファイルが移動したか確認。

条件指定したファイル名の一括削除

こちらの記事を参考にしてみてください。

注意点

普通にゴミ箱に入れた場合、「元に戻す」という項目で簡単に元のフォルダに戻せますが、

send2trashでゴミ箱に移動した場合「元に戻す」が選べないので、ドラッグやコピペで移動してあげる必要があります。

参考サイト

GitHub – arsenetar/send2trash: Python library to natively send files to Trash (or Recycle bin) on all platforms.

Pythonでsend2trashモジュールを使いファイルとフォルダーを安全に削除する | Men of Letters(メン・オブ・レターズ) – 論理的思考/業務改善/プログラミング

【Python】ファイルを操作する

Pythonメモ-65 (send2trash) (ファイルをゴミ箱に捨ててくれるライブラリ, クロスプラットフォーム)

Python

Posted by sei