Ciao a tutti,
dovrei scansionare i figli "dirA1, dirA2..." controllando i file *.log , effettuare un'operazione sui file e passsare al padre successivo dirB ...
I log da intercettare ad esempio sono quelli creati il giorno prima "IERI", in pratica:
Entro in dirA, dirA1 contiene un file creato ieri? si allora lo sposto, dirA2 contiene un file creato ieri? si allora lo sposto.
Ora arriva la mia difficoltà, non sò come dire alla procedura che la scansione
dei figli di dirA è finita e che puo applicare ad esempio un comando sui due file.
Poi proseguide e passare a dirB ecc...
es struttura ad albero:
dir1 -> dirA -> dirA1 -> pippoA.log ; plutoA.log
dirA2 -> pippoA.log ; plutoA.log
-> dirB -> dirB1 -> pippoB.log ; plutoB.log
-> dirC -> dirC1 -> pippoC.log ; plutoC.log
dirC2 -> pippoC2.log ;plutoC2.log
$dataieri = "$ieri/"+"$month/"+"$year"
$root = get-childitem ("z:\Logs\dirA" ) -recurse -include *.log
$subdirs = dir z:\Logs\dirA | where {$_.GetType() -match "directoryInfo"}
foreach($z in $subdirs){
foreach($f in $root){
if ($f.CreationTime -like "$dataieri*"){
$out = $f | copy-item -destination "D:\processLog"
}
}
}
il problema è che in questo modo , lui me li processa TUTTI (dirA, dirB, dirC..), come gli dico di fermarsi finito di
scansionare ad esempio dirA per applicare un'altra condizione ai file spostati? e poi proseguire su dirB?
Spero di essere stato abbastanza comprensibile :|
Grazie mille.