Question
Connaître la taille prise/perdu par les doublons
- Derouin
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 14
- Remerciements reçus 0
J'aimerais connaître la taille pris par les doublons c'est à dire les fichiers identiques présent au minimum deux fois.
Premièrement je ne considère que les fichiers doublons possédant le même nom, même taille et même date de modification.
Je les ais listés
[code:1]
#LISTE DE TOUS LES DOUBLONS
$doublons = While ($i -ne $TailleTableau) # Tant que $i est différent de $TailleTableau
{
$doublon[$i].Group # On affiche la cellule actuel du tableau
$i++ # On incrément $i soit on se déplace d'une cellule dans le tableau
}
[/code:1]
Maintenant je souhaiterais pouvoir connaître leurs poids totale sans \"le fichier original\".
Exemple j'ai 3 fois le même fichiers :
[code:1]
What's new.txt 4393 06/07/2002 18:55:02 C:\Test\log
What's new.txt 4393 06/07/2002 18:55:02 C:\Test
What's new.txt 4393 06/07/2002 18:55:02 C:\Test\3\3.1
[/code:1]
Je souhaiterais connaître le poids sans \"le fichier original\" autremement dis que des deux fichiers double en trop.
Merci d'avance
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
il manque un peu de script pour te guidé
mais ce n'est qu'un problème de math comme le script de l'autre post
ici tu multiplie la taille du fichier par le nombre de fois trouver moins un
sans doute quelque chose comme ça :
[code:1]$doublon[$i].group[0].length * ($doublon[$i].count - 1)
[/code:1]
Message édité par: 6ratgus, à: 18/06/18 11:27<br><br>Message édité par: 6ratgus, à: 18/06/18 11:28
Connexion ou Créer un compte pour participer à la conversation.
- Derouin
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 14
- Remerciements reçus 0
[code:1]
Foreach ($files in $doublons) # Pour chaque fichier dans $doublons
{
$tailledoublon+= ($files.Length.count - 1)
$Tailledoublon prend sa valeur et additionne celle d'un fichier
}
$tailledoublonMo = [math]::Round($tailledoublon/1Mb,2) # On convertis la taille totale obtenu en Ko en Mo jusqu'au centième
[/code:1]
Merci de vos réponses
Connexion ou Créer un compte pour participer à la conversation.
- Derouin
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 14
- Remerciements reçus 0
Merci de l'aide mais je n'arrive à utiliser ton code, j'ai du préciser que pour connaitre le poids des doublons je partais sur une boucle et que j'avais déjà fais cela :
[code:1]
Foreach ($files in $doublons) # Pour chaque fichier dans $doublons
{
$tailledoublon+= ($files.Length.count - 1)
$Tailledoublon prend sa valeur et additionne celle d'un fichier
}
$tailledoublonMo = [math]::Round($tailledoublon/1Mb,2) # On convertis la taille totale obtenu en Ko en Mo jusqu'au centième
[/code:1]
Merci de vos réponses
Correction :
J'ai déjà écrit cela
[code:1]
Foreach ($files in $doublons) # Pour chaque fichier dans $doublons
{
$tailledoublon+=$files.Length #$Tailledoublon prend sa valeur et additionne celle d'un fichier
}
$tailledoublonMo = [math]::Round($tailledoublon/1Mb,2) # On convertis la taille totale obtenu en Ko en Mo jusqu'au centième
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
[code:1]Foreach ($files in $doublons[1..$doublons.count-1]) # Pour chaque fichier dans $doublons
{
$tailledoublon+=$files.Length #$Tailledoublon prend sa valeur et additionne celle d'un fichier
}
$tailledoublonMo = [math]::Round($tailledoublon/1Mb,2) # On convertis la taille totale obtenu en Ko en Mo jusqu'au centième
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Derouin
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 14
- Remerciements reçus 0
Voici le résultat :
[code:1]
Échec lors de l’appel de la méthode, car [System.Object[]] ne contient pas de méthode nommée « op_Subtraction ».
Au caractère C:\Temp\Script\DoublonsParNom.ps1:15 : 28
+ Foreach ($files in $doublons[1..$doublons.count-1])
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation : (op_Subtraction:«»String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound
La taille totale des doublons en Mo : 0 Mo
[/code:1]
Des idées ? Merci
Sinon pour résoudre mon problème j'ai pensé à une autre manière de procéder:
Il faudrait lister tous les fichiers doublons (Comme fais pour le moment) et calculer leurs poids totale (Comme fais pour le moment)
Ainsi que lister seulement \"le fichier original\" des doublons et calculer leurs poids totale.
Pour ensuite faire :
$PoidsDoublons = $Poidstousdoublons - $Poidsoriginaldoublons
Par exemple :
[code:1]
What's new.txt 4393 06/07/2002 18:55:02 C:\Test\log
What's new.txt 4393 06/07/2002 18:55:02 C:\Test
What's new.txt 4393 06/07/2002 18:55:02 C:\Test\3\3.1
[/code:1]
Pour ceci cela donnerais :
$poidsDoublons = (4393*3) - 4393
J'espère être compréhensible et que quelqu'un aurais une idée.
Merci d'avance
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Connaître la taille prise/perdu par les doublons