gpt4 book ai didi

python - 如何在colab中从驱动器的垃圾箱中删除文件

转载 作者:太空宇宙 更新时间:2023-11-03 21:38:59 26 4
gpt4 key购买 nike

我使用google drive in colab 。基本上我做了以下事情:

from google.colab import drive
drive.mount('/content/gdrive')

此后我可以使用os函数(listdirremove)来操作文件。问题是,使用 os.remove 删除文件后,它实际上并没有被删除,而是被扔进了垃圾箱。我想完全删除一个文件,但到目前为止我还没有找到如何做到这一点。

我尝试在垃圾箱中找到该文件,但垃圾箱目录没有显示任何内容 os.listdir('/content/gdrive/.Trash') 我也在 Web 界面中看到了这些文件。

如何从垃圾箱中删除该文件?

最佳答案

使用 pydrive 在 Google Colab 内执行此操作非常简单模块。要删除 Google 云端硬盘回收站文件夹中的所有文件,请在 Google Colab 笔记本中编写以下行代码:

from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
my_drive = GoogleDrive(gauth)

输入身份验证代码并创建 GoogleDrive 类的有效实例后,写入:

for a_file in my_drive.ListFile({'q': "trashed = true"}).GetList():
# print the name of the file being deleted.
print(f'the file "{a_file['title']}", is about to get deleted permanently.')
# delete the file permanently.
a_file.Delete()

如果您想删除垃圾箱中的特定文件,则需要更改最后一 block 代码。假设您的垃圾箱中有一个名为 weights-improvement-01-10.5336.hdf5 的文件:

for a_file in my_drive.ListFile({'q': "title = 'weights-improvement-01-10.5336.hdf5' and trashed=true"}).GetList():
# print the name of the file being deleted.
print(f'the file "{a_file['title']}", is about to get deleted permanently.')
# delete the file permanently.
a_file.Delete()

如果您想进行其他可能更复杂的查询,例如删除一堆名称中具有共同表达式 weights-improvement- 的文件,或在给定日期之前所有已修改的文件;访问:1) Get all files which matches the query ,2) Search for files and folders .

关于python - 如何在colab中从驱动器的垃圾箱中删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53028607/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com