Question
Script qui filtre sur un dossier
- Damien
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
Alors ça fonctionne mais à moitier en fait le -recurse ne joue pas son rôle dans le get-chilitem puisqu' il ne cherche pas dans les sous-dossiers, bizarre
Connexion ou Créer un compte pour participer à la conversation.
- Damien
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
J'ai fouiner un peu sur le net et par rapport à ma demande y a des gens qui se base plutôt sur PSIsContainer. Alors je me demandais pourquoi !<br><br>Message édité par: DrMacabre, à: 13/12/16 21:19
Connexion ou Créer un compte pour participer à la conversation.
- crogiez
- Hors Ligne
- Membre premium
-
- Messages : 102
- Remerciements reçus 0
function ecrit_log($llogf){
#rem create log
$llog=get-date -Format \"yyyy-MM-dd-HH-mm-ss\"
$llog=$llog+\";\"+$llogf
$llog
$llog >> $malog
}
#recuperation du dossier courant
$monchemin=$MyInvocation.InvocationName
$monchemin
$mondossier=(split-path -Path $monchemin -Parent) + \"\\"
$mondossier
$monscript=split-path -path $monchemin -leaf
$monscript
$malog=$mondossier+$monscript.Substring(0,$monscript.IndexOf(\".\"«»))+\".log.txt\"
$malog
$maconf=$mondossier+$monscript.Substring(0,$monscript.IndexOf(\".\"«»))+\".conf.xml\"
$maconf
#rem create log
remove-item -Path $malog -ErrorAction SilentlyContinue
$mlog=\"
\"; ecrit_log($mlog)
$mlog=$monchemin; ecrit_log($mlog)
##########################
$dossierdebase = \"C:\windows\"
$filtredoss=\"syst\"
$dossiers = Get-ChildItem -Path $dossierdebase -Directory -Recurse
#$dossiers
$dossiers.Count
$dossiers|%{
if($_.Name -match $filtredoss ){
$_.FullName
$_.FullName >> $malog
}
}
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- crogiez
- Hors Ligne
- Membre premium
-
- Messages : 102
- Remerciements reçus 0
2016-12-15-14-21-30;C:\Users\admb26829as\Documents\PS_DEV\filtredoss\filtredoss.ps1
C:\windows\System
C:\windows\System32
C:\windows\SystemResources
C:\windows\assembly\GAC_32\System.Data
C:\windows\assembly\GAC_32\System.Data.OracleClient
C:\windows\assembly\GAC_32\System.EnterpriseServices
C:\windows\assembly\GAC_32\System.Printing
C:\windows\assembly\GAC_32\System.Transactions
C:\windows\assembly\GAC_32\System.Web
...
Connexion ou Créer un compte pour participer à la conversation.
- Damien
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
Par contre le truc de base que je voulais au départ. C'était que ça filtre sur certaine extension. Bref je reformule ma demande :
Le but est de travailler sur les dossiers et sous dossier avec des extensions spécifiques (*.jpg,*.png,*.tif,*.bmp,*.nef) et des noms de dossiers spécifiques (*photo*).
Puis faudrai additionner tout les fichiers avec les extentions spécifiques pour chaques dossiers spécifiques.
Si le total pour chaques dossier spécifique est supérieur ou égal à 100 MB alors on affiche le résultat avec la taille total du dossier spécifiques et le chemin du dossier, dans un fichier txt par exemple.
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
DirectoryName contient le nom du dossierJ'ai une question pourquoi utilisé DirectoryName plutôt que PSIsContainer ?
J'ai fouiner un peu sur le net et par rapport à ma demande y a des gens qui se base plutôt sur PSIsContainer. Alors je me demandais pourquoi !
PSIsContainer indique si l'objet renvoyer par get-childitem est un dossier ou un fichier
oui bizarre car de mon coté mes ne pose pas ce problème !Alors ça fonctionne mais à moitier en fait le -recurse ne joue pas son rôle dans le get-chilitem puisqu' il ne cherche pas dans les sous-dossiers, bizarre
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Script qui filtre sur un dossier