C'est assez facile en fait!
Vous le ferez avec deux filtres distincts, que PowerShell obtient via l'applet de commande Where-Object
. Cette cmdlet accepte les comparaisons au format {$_.PropertyName -eq "Something"}
ou PropertyName -eq "Something"
. Le format suivant est uniquement disponible sur PowerShell version 3 et ultérieure. Tout d'abord, pour filtrer uniquement les fichiers au-dessus de 100 Ko.
Where-Object Length -ge 100KB
La deuxième partie, où le nom de fichier contient quelque chose.
Where-object Name -like "*lowRes.jpg*"
Vous pouvez les rejoindre, mais je voudrais juste tuyau un dans l'autre, comme celui-ci.
dir *.jpg -Recurse | Where-Object Length -ge 100KB | Where-object Name -like "*lowRes.jpg*"
Vous pourriez vouloir mettre d'abord le filtrage de nom, parce que moins de fichiers auront un certain nom que d'être au-dessus ou au-dessous d'une certaine taille. Cela dépend de la disposition de vos fichiers.
Enfin, canaliser tout cela dans la cmdlet Export-Csv
et bam, vous avez terminé!
Y at-il une raison pour laquelle vous divisez vos déclarations 'WHERE', ou est-ce juste Préférence personnelle? '' Aussi, je voulais juste dire que je suis un grand fan de votre série sur la façon de faire une interface graphique et les messages de blog de scripts filetés. ' ' –
TheMadTechnician
Je les scinde parce que vous ne pouvez pas joindre les instructions where et conserver la nouvelle syntaxe facile à lire. J'aime la nouvelle syntaxe, alors j'ajoute la petite inefficacité de l'utilisation de deux commandes séparées. Certains ne sont pas d'accord et c'est bien, mais je trouve qu'il est plus facile de lire et d'interpréter. Et je suis content que tu aimes le site. Faites-moi savoir si vous souhaitez que je couvre un certain sujet :) – FoxDeploy
Pourquoi ne pas utiliser directement 'ls * _lowres.jpg -Rec'? – LotPings