ইউপিডি: নীচে দেখুন
আমি এটির জন্য একটি সাধারণ স্ক্রিপ্ট লিখেছি। আপনি এটি এখান থেকে চালাতে পারেন: https://script.google.com/macros/s/AKfycbyUvNoXzBMBDE9pnHkLUltliGwjip5x09t3PeTY_1KoXO45F6iz/exec
(যদি এটি বন্ধ হয়ে যায়, কেবল আবার এটি চালান, এবং এটি যেখানে ছেড়ে গেছে সেখান থেকে এটি চালিয়ে যাবে)
এটি আপনার ড্রাইভের মূলে দুটি ফাইল তৈরি করবে, একটি প্রগতি প্রদর্শন করে এবং স্ক্রিপ্ট সম্পূর্ণ হওয়ার পরে মুছে ফেলা হয়। অন্যটি হ'ল প্রতিবেদন যা সমস্ত ফোল্ডার এবং মাপ তালিকাভুক্ত করে। দেখে মনে হচ্ছে।
অথবা আপনি গুগল স্ক্রিপ্ট সম্পাদকটিতে কোডটি অনুলিপি করে আটকান এবং সেখান থেকে "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;
}
ইউপিডি: স্ক্রিপ্টটি আপডেট করা হয়েছিল যাতে এটি যদি খুব বেশি সময় চলে এবং এটি বন্ধ হয়ে যায় তবে এটি আবার একবার চালান এবং এটি "ফোল্ডার আকারগুলি অর্জন করা ..." ফাইলটিতে সঞ্চিত ডেটা ব্যবহার করে যেখানে ছেড়ে গেছে সেখান থেকে এটি আবার শুরু হবে।