Powershell kullanarak bir klasörün boyutunu nasıl bulabilirim?


23

Bir klasörün ne kadar büyük olduğunu görebilmek istiyorum (alt klasörler ve içerikleri dahil tüm içerikler). Bunu yapmak için bir powershell komutu bulamıyorum, ancak boyutu bilmek istediğimde Windows Gezgini'ni açmak zorunda kalmak istemiyorum. Bunu Powershell'den gerçekleştirmenin basit bir yolu var mı?

Yanıtlar:


29

Bunu günün Powershell bahşişinden aldığımdan eminim; Kesin hatırlayamıyorum, ama uzun zamandır kullanıyorum ve çok faydalı oldu.

"{0:N2}" -f ((Get-ChildItem -path C:\InsertPathHere -recurse | Measure-Object -property length -sum ).sum /1MB) + " MB"

Düzenleme: Kullanımı kolaylaştırmak için (her şeyi hatırlamanız ve her seferinde yazmanıza gerek kalmaz), bir işlev olarak profilinize ekleyebilirsiniz:

function Get-Size
{
 param([string]$pth)
 "{0:n2}" -f ((gci -path $pth -recurse | measure-object -property length -sum).sum /1mb) + " mb"
}

Ve sonra herhangi bir komut gibi kullanın:

Get-size C:\users\administrator

1
Merak ediyorum, bunu bir PowerShell profiline nasıl eklerim? Nokta kaynak mı demek istiyorsun ? (yan not: kod başında 4 boş alan eklenerek biçimlendirilebilir)
nixda

2
Yapabilirsin . Değişiklikler yaptıysanız ve PS oturumunuzu yeniden başlatmak istemiyorsanız, profilinizi kaynaklayın, ancak Powershell'i her başlattığınızda otomatik olarak yüklenir, bu nedenle genellikle bunu yapmazsınız. Profilinizi ilk kez oluşturmak için aşağıdakileri yapın: ni $ profile -type f -fo Sonra profilinizi açıp düzenleyebilirsiniz. Nerede bulunduğunu bulmak için, kabuğa $ profile yazın, yol görüntülenecektir. Ardından, yukarıdaki gibi eklediğiniz tüm işlevler, yerleşik olduğu gibi kullanılabilir. Ayrıca, kod biçimlendirme ipucu için de teşekkürler
Darian Everett

1
+1 Whoa bu numarayı bilmiyordu. Büyüleyici :)
nixda

1
ne gelmez {0:N2}mi?
soandos

1
Biçimlendirme. Sıfır, yer tutucudur, N2, iki ondalık basamaklı bir sayı anlamına gelir.
Darian Everett,

9

Microsoft TechNet sitesinde var burada

giriş:

Get-ChildItem C:\Scripts -recurse | Measure-Object -property length -sum

çıktı:

Count    : 58
Average  :
Sum      : 1244611
Maximum  :
Minimum  :
Property : length

1
Klasörün alt klasörleri olup olmadığını tekrar tekrar kontrol etmeniz gerektiğinden, bu durum genellikle oldukça uzak olabilir. Ayrıca, bu ölçüm nedir, bit?
Austin T Fransızca,

Bitleri düzeltin - ayrıca üzerinde düzenleme yapmadığım tekrar anahtarını da unuttum - ayrıca, google'da (powershell klasör boyutu) bulunan bu arama işlemini gerçekleştiren teknik bir makale sunmak üzere gönderdiğimden, OP’nin tam olarak anlaşılmasını sağlayabileceğimi not edin. komutlar sadece cevabı kullanmadı
50-3

Güncellemeler için teşekkürler, şimdi daha iyi bir uyum Q & A formatı için düşünüyorum.
Austin T French,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.