Question Script recherche doublons

Plus d'informations
il y a 13 ans 10 mois #7165 par Arthur
Réponse de Arthur sur le sujet Re:Script recherche doublons
Si je met [string[]] au début c'est surtout par habitude car bien souvent Powershell m'emmerd...m'embêtes! avec les types alors je préfère le forcer à mettre le format que je veux dès le début comme ca pas de surprise !

Bon, c'est une histoire de sémantique...


Ça chipote grave ici ! :laugh:

Effectivement, le cmdlet Group-Object est plus approprié pour ton traitement.


En effet je l'avais oublié celui la.Il permet de très rapidement voir les doublons

[code:1][string[]]$tab = \"toto\" , \"titi\", \"toto\" , \"tete\" , \"toto\" , \"tata\" , \"titi\"
$tab_group = $tab | Group-Object | where { $_.Count -ge 2 }
[/code:1]<br><br>Message édité par: bilbao, à: 16/06/10 17:10

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 10 mois #7166 par Meo
Réponse de Meo sur le sujet Re:Script recherche doublons
Script terminé :)
[code:1]&lt;#
--Script pour identifier les doublons des partages des serveurs, leurs tailles et chemins--
Notes :
- Pour fonctionner ce script nécessite Powershell, vous devez préalablement lancer powershell en administrateur (clic droit sur Windows Powershell, Exécuter en tant qu'administrateur...)
- Avant de lancer le script, modifiez localement le mode de sécurité de Powershell en exécutant la commande : Set-ExecutionPolicy Unrestricted
- Par défaut le script écrira le fichier doublons.txt dans le dossier Doublons à la racine de C:\ (prenez garde à l'espace disponible sur le lecteur racine avant de lancer le script ou modifiez le chemin...)
- Pour information ce script utilise environ 20 à 30% maximum de ressources processeur sur un xeon dual core à 2GHZ
Note : à la fin du script, le mode de sécurité de powershell est repassé en Restricted (mode par défaut), pour connaître le mode de sécurité en cours sur le shell : Get-ExecutionPolicy
#&gt;
Write-host \&quot;===Script pour identifier les doublons===\&quot;
New-Item -type directory C:\Doublons
Set-location C:\Doublons
$chemin = Read-host \&quot;Veuillez indiquer quel est le chemin UNC du lecteur/dossier à analyser?\&quot;
Write-host \&quot;En cours d'exécution, veuillez patienter...\&quot;
Get-ChildItem $chemin -recurse | Select-Object Name, DirectoryName, Length | Export-Csv C:\Doublons\liste.csv -Encoding Unicode
$tableau = Import-Csv ./liste.csv
$doublons = $null
$doublons = $tableau | Group-Object -Property Name, Length | where { $_.Count -ge 2 }
$doublons | Format-List | Out-file ./doublons.txt
Remove-item ./liste.csv
Write-host \&quot;Script terminé.\&quot;
Set-ExecutionPolicy Restricted[/code:1]
Merci à tous pour l'aide apportée, il est certain qu'on peut mieux faire au niveau de l'affichage final mais je débute :P
++

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 10 mois #7167 par Arthur
Réponse de Arthur sur le sujet Re:Script recherche doublons
Très joli script juste une chose pourquoi exporte tu \&quot;liste.csv\&quot;?
Pourquoi ne le met tu pas directement en variable?:whistle:

Sinon le reste est nickel.<br><br>Message édité par: bilbao, à: 17/06/10 18:11

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 10 mois #7168 par Laurent Dardenne
meogeo écrit:

- Avant de lancer le script, modifiez localement le mode de sécurité de Powershell en exécutant la commande : Set-ExecutionPolicy Unrestricted

Tu ne devrais pas procéder de cette manière, si ce n'est pas indiscret peut-on en connaître la raison ?

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 12 ans 2 mois #11067 par babatman
Réponse de babatman sur le sujet Re:Script recherche doublons
Juste pour ceux qui comme pourrait tomber sur ce script, on peut le simplifier :
[code:1]
Write-host \&quot;===Script pour identifier les doublons===\&quot;
#New-Item -type directory C:\Doublons
#Set-location C:\Doublons
$chemin = Read-host \&quot;Veuillez indiquer quel est le chemin UNC du lecteur/dossier à analyser?\&quot;
Write-host \&quot;En cours d'exécution, veuillez patienter...\&quot;
Get-ChildItem $chemin -recurse | Select Name,Length,FullName | Group-Object -Property Name, Length | where { $_.Count -ge 2 } | Out-GridView
Write-host \&quot;Script terminé.\&quot;
[/code:1]

ou encore plus !:

[code:1]
Write-host \&quot;===Script pour identifier les doublons===\&quot;
#New-Item -type directory C:\Doublons
#Set-location C:\Doublons
$chemin = Read-host \&quot;Veuillez indiquer quel est le chemin UNC du lecteur/dossier à analyser?\&quot;
Write-host \&quot;En cours d'exécution, veuillez patienter...\&quot;
gci $chemin -r | Select Name,Length,FullName | Group-Object -Property Name, Length | where { $_.Count -ge 2 } | Out-GridView
Write-host \&quot;Script terminé.\&quot;
[/code:1]<br><br>Message édité par: babatman, à: 7/02/12 19:33

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.080 secondes
Propulsé par Kunena