Googleドライブでは、Sort
分割ボタンを使用し、Quota Used
を選択して、そこにある各ファイルのサイズを表示できます。
ただし、フォルダーのサイズは表示されません。
Googleドライブでフォルダを管理するための基本的な要件だと思います。サブフォルダーとファイルでいっぱいのフォルダーがあり、各ファイルのサイズを再帰的に合計することはできません。
このフォルダーを削除するかどうかを決定する必要があります。しかし、事前にサイズを知る必要があります。
フォルダーがどれだけのボリュームを使用したかを確認する方法はありますか?
私はこのWebアプリケーションを見つけました。 http://gdrivefoldersize.appspot.com/ まだ非常にシンプルですが、概要を説明するのに適しています。
フォルダーごとではありませんが、このかなりのヒントのおかげで、大きなファイルがある場所を見つけるのに最適です: サイズでGoogleドライブファイルを並べ替えて最大のファイルを見つけます 。
GDriveの左パネルでホバー Upgrade storage:
今それをクリック i Driveの右側にあります。
これは、そのための直接リンクです。 https://drive.google.com/drive/quota
UPD:以下を参照
このための簡単なスクリプトを書きました。ここから実行できます: https://script.google.com/macros/s/AKfycbyUvNoXzBMBDE9pnHkLUltliGwjip5x09t3PeTY_1KoXO45F6iz/exec
(停止した場合は、もう一度実行するだけで、元の場所から続行されます)
ドライブのルートに2つのファイルを作成します。1つは進行状況を表示し、スクリプトが完了すると削除されます。その他は、すべてのフォルダーとサイズをリストするレポートです。このように見えます。
または、コードをコピーしてGoogle Scriptエディターに貼り付け、そこから「doGet()」関数を実行するだけです。
function doGet(){
CreateReportFile();
return ContentService.createTextOutput("Report file created in your Drive's root folder");
}
function CreateReportFile() {
var reportContent = CreateReport();
DriveApp.createFile('Folder Sizes Report.txt', reportContent);
}
function CreateReport(){
var reportContent = "";
var progressFileFound = DriveApp.getRootFolder().searchFiles("title contains 'Getting Folder Sizes,'");
var progressFile;
var report=[];
if(progressFileFound.hasNext()) {
progressFile = progressFileFound.next();
var json = progressFile.getBlob().getDataAsString();
try{
report = JSON.parse(json);
} catch(Exception) {
DriveApp.removeFile(progressFile);
progressFile = DriveApp.createFile("Getting Folder Sizes, 0 processed...", " ");
}
}
else {
progressFile = DriveApp.createFile("Getting Folder Sizes, 0 processed...", " ");
}
var f = DriveApp.getRootFolder();
AddFolderToReport(report, f, "/", progressFile);
DriveApp.removeFile(progressFile);
reportContent += "TotalSize MB FilesSize MB Path \r\n";
for(var i=0; i<report.length; i++)
reportContent += Utilities.formatString("%12.2f ", (report[i].totalSize / (1024*1024))) + Utilities.formatString("%11.2f ",(report[i].filesSize / (1024*1024))) + report[i].folderPath + "\r\n";
return reportContent;
}
function AddFolderToReport(report, currentFolder, currentPath, progressFile){
var report1 = [];
for(var i=0; i<report.length; i++)
if(report[i].folderPath == currentPath)
return report[i].totalSize;
var fChildren = currentFolder.getFolders();
var totalSize = 0;
while(fChildren.hasNext() && currentPath.length < 2000){
var nextF = fChildren.next();
totalSize += AddFolderToReport(report, nextF, currentPath + nextF.getName() + "/", progressFile);
}
var filesSize = 0;
var files = currentFolder.getFiles();
while(files.hasNext()){
filesSize += files.next().getSize();
}
totalSize += filesSize;
report.Push({folderPath: currentPath, filesSize: filesSize, totalSize: totalSize});
progressFile.setName("Getting Folder Sizes, " + report.length + " processed...");
progressFile.setContent(JSON.stringify(report));
return totalSize;
}
UPD:スクリプトが更新され、実行時間が長すぎて停止した場合は、もう一度実行するだけで、「Getting Folder Sizes ...」ファイルに保存されたデータを使用して、元の場所から再開します。
残念ながら、答えはノーです。
このディスカッションを参照してください: http://productforums.google.com/forum/#!topic/drive/TVtw1_QA6fA
PCまたはMACにGoogleドライブがインストールされている場合は、Windowsエクスプローラー(PC)またはファインダー(MAC)を使用して、フォルダーサイズを簡単に確認します。 Webブラウザから実行する方法が見つかりませんでした。
ここには(現在機能している)回答がないため、少し不便な回答を投稿しますが、少なくとも15 GB(Googleドライブが提供する無料のストレージ容量)未満であれば機能します。
新しいGoogleアカウントを作成し(これは非常に長いプロセスではありませんが、ありがたいことに)、そのアカウントとフォルダーを共有します。新しいアカウントで、共有フォルダーをコピーして、そのアカウントにもあるようにします。新しいGoogleアカウントには、使用したストレージの量が表示されます。それがフォルダのサイズです。その情報を取得したら、フォルダ全体を削除できます。このプロセス全体は数分で完了します。