web-dev-qa-db-fra.com

Ajout des tailles de fichier de la liste Get-ChildItem

Mon objectif est de déterminer l'espace occupé par toutes les images sur mes lecteurs réseau.

Donc, ma commande pour récupérer une liste de toutes les images est la suivante:

Get-ChildItem -recurse -include *jpg,*bmp,*png \\server01\folder

Ensuite, je voudrais simplement récupérer la taille du fichier (Length).

Get-ChildItem -recurse -include *jpg,*bmp,*png \\server01\folder | Select-Object -property Length

Maintenant, cela donne:

                                         Length
                                         ------
                                         85554
                                         54841
                                         87129
                                        843314  

Je ne sais pas pourquoi il est aligné à droite, mais je veux saisir chaque longueur et les ajouter toutes ensemble. Je suis perdu et j'ai essayé tout ce que je sais (ce qui n'est pas grand-chose depuis que je suis nouveau sur PS), j'ai essayé de rechercher Google mais je n'ai trouvé aucun résultat pertinent.

Toute aide ou méthode alternative est appréciée!

14
user2517266

Utilisez le Measure-Object applet de commande:

$files = Get-ChildItem -Recurse -Include *jpg,*bmp,*png \\server01\folder
$totalSize = ($files | Measure-Object -Sum Length).Sum

Pour obtenir la taille en Go, divisez la valeur par 1GB:

$totalSize = ($files | Measure-Object -Sum Length).Sum / 1GB
28
Ansgar Wiechers

Vous pouvez le faire comme une doublure avec quelque chose comme ça.

Get-Childitem -path  "C:\Program Files\Internet Explorer" | Select-Object 
Name, @{Name="KBytes";Expression={ "{0:N0}" -f ($_.Length / 1KB) }}

Name          KBytes
----          ------
en-US         0
images        0
SIGNUP        0
ExtExport.exe 52
hmmapi.dll    53
iediagcmd.exe 500
ieinstal.exe  490
ielowutil.exe 219
IEShims.dll   398
iexplore.exe  805
sqmapi.dll    49
4
William Foster