1 votes

Supprimer tous les fichiers qui contiennent une chaîne de caractères et qui ont une taille spécifique en Powershell

J'ai besoin d'un script qui regarde un répertoire, sélectionne ceux qui ont une chaîne dans son contenu et qui ont une longueur (taille) de "8".

J'ai essayé de faire comme ça, mais ça ne marche pas. Des conseils ?

Get-ChildItem -Path c:\test | Where-Object { $_.Length -eq 8 } | Select-String -pattern "foo" | group path | select name  | foreach-object {remove-item $_.name}

2voto

Clayton Points 4443

Je ne suis pas sûr de ce que vous essayez de faire avec group-object ici, d'après ce que vous avez expliqué ce n'est pas nécessaire. Tel qu'il est écrit, vous devez également vous rappeler que le répertoire courant peut ne pas être c:\test vous devez donc utiliser $_.fullname pour l'enlever.

Je pense que vous voulez faire ça :

Get-ChildItem -Path c:\test | Where-Object { $_.Length -eq 8 -and $_.name -match "foo"} | foreach-object {remove-item $_.fullname}

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X