如何快速批量删除Google Earth Engine云资产?
Google Earth Engine 批量删除资产的方法
方法一:通过GEE Code Editor 脚本批量删除
- 确定目标资产所在的文件夹/集合路径,例如
users/your_username/your_target_folder - 使用以下脚本,替换路径后在Code Editor中运行:
// 替换为你的目标资产路径 var targetPath = 'users/your_username/your_target_folder'; // 获取路径下所有资产 var assetList = ee.data.listAssets({'parent': targetPath}).assets; // 遍历删除资产 assetList.forEach(function(asset) { print('Deleting:', asset.id); ee.data.deleteAsset(asset.id); });
- 若需删除嵌套文件夹内的所有资产,可使用递归脚本:
function recursiveDelete(folderPath) { var assets = ee.data.listAssets({'parent': folderPath}).assets; // 先处理子资产 assets.forEach(function(asset) { if (asset.type === 'FOLDER') { recursiveDelete(asset.id); } else { ee.data.deleteAsset(asset.id); print('Deleted asset:', asset.id); } }); // 删除空文件夹 ee.data.deleteAsset(folderPath); print('Deleted folder:', folderPath); } // 调用递归删除函数,替换为目标路径 recursiveDelete('users/your_username/your_target_folder');
方法二:使用Earth Engine命令行工具批量删除
- 前置条件:已安装
earthengine-api(通过pip install earthengine-api安装)并完成授权(运行earthengine authenticate) - 执行以下命令:
# 先列出目标路径下的资产,确认待删除列表 earthengine ls users/your_username/your_target_folder # 递归删除路径下所有资产及子文件夹 earthengine rm -r users/your_username/your_target_folder
- 若仅删除当前路径下的一级资产(不包含子文件夹),去掉
-r参数即可。
注意事项
- 删除操作不可逆,请务必确认目标路径准确,避免误删重要资产
- 资产数量较多时,命令行工具的执行效率优于Code Editor脚本,可避免请求频率限制
- 仅能删除你拥有编辑权限的资产
内容的提问来源于stack exchange,提问作者楊宇恩
相关产品推荐
相关产品推荐

