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!
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
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