I Google Drive kan du använda Sort
delningsknapp och välja Quota Used
för att visa storleken på varje fil där.
Mappstorlekar visas dock inte.
Jag antar att det verkligen är ett grundläggande krav för att hantera mappar på Google Drive. Jag har en mapp full med undermappar och filer och jag kan inte sammanfatta storleken på varje fil rekursivt.
Jag måste bestämma om jag vill ta bort den här mappen eller inte. Men jag måste veta hur stor den är i förväg.
Finns det något sätt att se hur mycket volym en mapp har tagit?
Kommentarer
- Google Drive File Stream-appen berättar hur stor en mapp för Google Drive / Team Drive är. Du behöver ’ inte ens behöver synkronisera mappen. På Mac bara ” Få information ” i mappen och den laddar hela mappens storlek
- Om den Google Drive har speglats till din disk kan du använda verktyg som wiztree, windirstat … för att snabbt visa storleken på alla mappar och undermappar.
Svar
UPD: när Google började blockera icke-verifierade skript, är det enda sättet att använda det att kopiera och klistra in källan i din skriptredigerare. Och verifiering kräver lite extra ansträngning, så jag gjorde inte den ännu.
UPD2: om du har många filer kommer den att köra tidsgränsen och stoppa; du måste köra den flera gånger (du kan också ställa in automatisk tidsinställd utlösare för detta)
Jag skrev ett enkelt skript för detta. Du kan köra den härifrån: https://script.google.com/macros/s/AKfycbyUvNoXzBMBDE9pnHkLUltliGwjip5x09t3PeTY_1KoXO45F6iz/exec
(om den blir stoppad, kör bara det igen, och det fortsätter från det det lämnade)
Det skapar två filer i roten på din enhet, en visar framsteg och raderas efter att skriptet är klart. Annat är rapporten som visar alla mappar och storlekar. Det ser ut så här.
Eller så kan du bara kopiera och klistra in koden i Google Script-redigeraren och kör funktionen ”doGet ()” därifrån:
function doGet(){ var progressFileCompletedFound = DriveApp.getRootFolder().searchFiles("title contains "Folder Sizes Report Completed""); if(progressFileCompletedFound.hasNext()) { return ContentService.createTextOutput("Report file was already created in your Drive"s root folder, exiting."); } CreateReportFile(); DriveApp.createFile("Folder Sizes Report Completed.txt", "You may safely delete this file."); 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: skriptet uppdaterades så att det körs för lång och är stoppad, kör bara den en gång till så återupptas den från den den lämnade med hjälp av data lagrad i filen ”Få mappstorlekar …”.
Kommentarer
- Bra manus men jag har inte kunnat godkänna det varken via länken eller kör direkt från scripts.google.com. Efter att ha godkänt behörigheterna går jag tillbaka till inloggningen för auktorisering.
- Jag vet inte varför, jag ’ har försökt en vän ’ -kontot och det fungerar. Ser ut som ett generiskt problem med ditt konto, eller är det ’ bara webbläsarcache? Försök använda anonymt fönster (Ctrl + Skift + N)
- @jj. Jag har uppdaterat skriptet så att det nu kan återupptas där det slutade. Kör bara det några gånger.
- Bra jobbat med manuset! Jag kunde inte ’ inte få länken att fungera men kunde kopiera och klistra in koden i Google App-skript och köra den. Jag var tvungen att starta om den några gånger på grund av Googles ’ begränsning för timeout men det fungerade äntligen till slut. Tack!
- @ahorn Ja, manuset letar efter varje fil och mapp under ” / ” sökväg, vilket är ” Min enhet ”. Du kan se storleken på vilken undermapp som helst under ” / ”, men vad är vägen för din ” dator ” – Jag vet inte ’. Du kan försöka ändra den här raden:
var f = DriveApp.getRootFolder();
som berättar var du ska börja.
Svar
Uppdatera 2020
Numera klickar vi på n GB of nn GB used
till listan över de största filerna på vår Drive :
slutuppdatering
Inte efter mappar men fantastiskt att hitta var är de stora filerna, tack vare detta vackra hat-tips: Sortera dina Google Drive-filer efter storlek för att hitta de största filerna .
På GDrive vänstra panel, håll muspekaren Uppgradera lagringsutrymme :
Klicka nu på det i till höger om Drive och där har vi det :
Detta är den direkta länken för det: https://drive.google.com/drive/quota
Kommentarer
- det visar bara filer som inte är mappar
Svar
Tyvärr är svaret nej.
Se den här diskussionen: http://productforums.google.com/forum/#!topic/drive/TVtw1_QA6fA
Kommentarer
- Jag tror att det här är mer eller mindre svaret, beroende på hur man tolkar OP ’ s fråga – med hjälp av Google Drive ’ s webbplats? Definitivt inte. Men till slut frågade han: ” Finns det något sätt att se hur mycket volym en mapp har tagit? ”. Tja, inom ” på något sätt ”, ja. Du kan använda GDrive API för att lägga till filstorlekar rekursivt. du kan också använda skriptet från ett annat svar här, programvara från tredje part osv.
- Google Drive File Stream, ” affären ” alternativet på hämtningswebbplatsen visar mappstorlekar på din dator lokalt ganska snabbt. i.imgur.com/7JuL3Jf.png
Svar
Du kan använda Python. Det här svaret inspirerades av Aditya , så vänligen rösta upp hans svar där. Jag tillhandahåller förbättrad kod nedan, som bara kan visa de största mapparna. (Det är min första kodning i Python!)
I Google Colab , skapa en ny anteckningsbok, klicka på ” Filer ” -ikon i vänster sidofält och ” Montera enhet ”. Du måste verifiera Google Drive File Stream för att komma åt ditt Google-konto och kopiera autentiseringstoken till Colab-anteckningsboken.
Kör sedan den här koden:
import re all = open("all.txt", "w") ! du -h /content/drive/My\ Drive/* >> all.txt all.close() GB = open("GB.txt", "w") for line in open("all.txt", "r"): if re.search("G\t", line): GB.write(line) print(line) GB.close()
Alla mappstorlekar sparas i ” all.txt ”. Observera att alternativet -h
(i motsats till -sh
) visar undermappar. Då är "G\t"
den sträng som man söker efter (en stor G, följt av en flik) och den raden skrivs ut. Det isolerar mapparna som är minst 1 GB stora. (Du kan använda "M\t"
för mappar med en megabyte-storlek.) De största mapparna lagras i ” GB.txt ”.
Kommentarer
- jag hoppas att du kan hitta ett sätt att dela belöningen med @aditya – jag fick ett mail från dem om deras svar, och de sa att de ’ bara är glada över att det kan vara användbart … också, trevligt arbete med snabb pythoninlärning! utgåvor … 1.
du
tar mycket lång tid att avsluta i mitt fall (ungefär 200 GB) både här och i hans enklare manus förstås. kanske du kan förbättra pythonen för att ta hänsyn till detta och vara mer gradvis. 2. det ’ är ett problem kring följande symlänkar som är svårare att hantera: om det följer för många kommer siffrorna att vara fel. 3. helst vill jag se kvotanvändning. annorlunda odjur! - slutligen, 4. mycket intressant idé om att använda filer för att behålla tillstånd … men
>>
vann förmodligen ’ t fungerar som du tänkte, eftersom det ’ är enkelt att lägga till och köra igen vinner ’ t fortsätt från där det slutade , utan bara springa igen. Jag ville bo igen: Tack så mycket för dina ansträngningar !! det ’ är användbart som det är (även om jag ’ fortfarande väntar på att se det faktiska resultatet kan jag redan föreställa mig hur bra det kommer att vara) 😁😘 - Tack. Jag tror att körtiden är att göra med molnens datorkraft i Colab. Jag blev förvånad över att se att Aditya inte kunde ’ lämna ett svar på den här frågan för två dagar sedan ( se sidan med behörigheter ). Kanske finns det en begränsning av denna fråga som jag inte kan ’ se. Det fanns 6 timmar kvar av bounty-nådeperioden, och en hel del gratis rep för dig! Jag förbättrade hans kodförslag något, men framtida läsare, snälla uppröst Aditya ’ s inlägg . Han säger åtminstone att han ’ är nöjd med det.
- Av ” kvotanvändning ” pratar du om den procentandel som det tar upp av det totala Drive-utrymmet, eller pratar du om att få en lista över de största enskilda filerna?
- fram till detta datum, jag ’ Jag jobbar fortfarande med att städa upp min enhet och det här skriptet fungerade riktigt bra. med alla dess brister hjälpte mig oerhört eftersom det ’ bara ingenting annat som ens fungerar! Med detta sagt gjorde jag en liten modifiering av den för att göra det lättare att se resultaten. Jag tror att det ’ blir lättare att föreslå en redigering.
Svar
Uppdatering, september 2020:
Det finns nu en Android-app som kan göra detta åt dig, kallas Storage Analyzer & Diskanvändning ,
Det ger dig ett detaljerat träd för hela mappen hirearchy, precis som WinDirStat på Windows eller (KDirStat på GNU / Linux eller Disk Inventory X på macOS).
Så här såg det ut när jag körde det:
Om du inte har tillgång till en Android-enhet, det finns många Android-emulatorer för stationära och till och med i webbläsare (fortsätt försiktigt med den senare, eftersom du måste logga in med ditt Google-konto på ett system du inte har kontroll över.)
Se upp: Den här appen har uppenbarligen ett designfel, den måste ständigt vara i förgrunden medan den kör sin analys (som kan ta s ome tid om din Google Drive-mapp har mycket innehåll.)
Kommentarer
- Man skulle behöva kopiera innehållet för att äga filerna , men det är omöjligt om det finns flera mappar i föräldramappen i fråga.
- @ahorn Du kan kopiera en mapp med underkataloger i Drive.
- @Revetahw hur gör man det ? När jag högerklickar på en mapp finns det inget alternativ att ” Skapa en kopia ” som med filer.
- @ahorn Wow, du ’ har rätt
- @cregox Åh, så den här appen kommer att stoppa behandlingen om du ens byter till en annan app mitt i bearbeta? Det är ganska irriterande, även om jag antar att jag inte märkte det eftersom min process var så snabb att jag inte hade tid att byta till en annan app. Jag antar att en anständig lösning skulle vara att köra den här appen på en Android-emulator (eller en virtualiserad Android-inom-Android) så att appen tycker att den alltid är i förgrunden, även om du behöver använda din Android-enhet för något annat medan den bearbetas. På så sätt kan den långa bearbetningstiden vara acceptabel.
Svar
Om du har Google Drive installerat på din dator eller MAC, använd Windows Explorer (PC) eller Finder (MAC) för att enkelt kontrollera mappstorlekarna. Jag kunde inte hitta något sätt att göra det från en webbläsare.
Kommentarer
- De mappar som jag ’ har valts för Google-enhet på min dator till > 6 GB. Google Drive-webbplatsen säger dock att de bara är 3,7 GB (helt synkroniserade). Skulle vara trevligt att kontrollera mappstorlekar / inga filer i etc eftersom jag ’ inte är övertygad om att alla mina filer är synkroniserade!
- @ user56353 Datorer rapporterar ibland disken använt utrymme. Diskutrymme tilldelas i hela block, som 4k i storlek, och om en fil bara är 1k använder den fortfarande 4k på disk. Tusentals små filer kan använda mycket slösat utrymme. Google Drive rapporterar kanske endast verklig filstorlek. Google Drive kan också komprimera foton & videor eller av duplicera filer mellan användare om de är samma fil. Kontrollera den faktiska filstorleken kontra storleken på disken. Windows 8.1 rapporterar båda i filegenskaper (
ALT+ENTER
). - I vårt fall ’ använder vi Drive File Strömma och ville kontrollera mappens storlek innan den synkroniserades med den lokala maskinen.
- @ mm32993 Detta svar är inte ’ t användbart, för i mitt situation Jag vill kontrollera mängden lagring som en stor mapp (upp till 80 GB) tar upp utan att synkronisera den.
- @ahorn Jag tror att du saknade sammanhanget. Drive File Stream hämtar inte objekt, så vi kan inte se mappens fulla storlek. Vi vill synkronisera allt från en specifik mapp för att förbereda oss för att arbeta offline, men vi ’ kan inte se mappens storlek innan vi gör det. 🙂
Svar
Om du använder Linux,
-
Montera ditt Google Drive-konto som en nätverksenhet på din dator med
google-drive-ocamlfuse
paketet (i Alessandro Strada ”s PPA ). Obs: filerna laddas inte ner (såvida du inte öppnar dem), så den här metoden kommer inte att använda mycket av din datatillägg. -
Spara mapphierarkin med storlekar som en textfil. Jag rekommenderar att du bara inspekterar mapparna som är större än 1GiB, eftersom det gör det lättare att hitta de största mapparna (om du vill minska diskutrymme):
cd "/home/username/Google-Drive"
# (eller varhelst enheten är monterad)tree --du -h | grep G]
> "tree.txt"
där du kanske vill vara mer specifik om var
.txt
-filen lagras.Obs: ha tålamod med kommandot
tree
. Om du har mycket lagring tar det en stund. -
Skriv ut textfilen, inspektera och njut!
Kommentarer
- detta var ganska lovande, men någon annan kom med en mycket enklare lösning, ur min synvinkel: webapps.stackexchange.com/questions/146178/…