- Apple Watch Sport - ez is csak egy okosóra
- iPhone topik
- Xiaomi 17 Ultra - jó az optikája
- Apple iPhone 17 - alap
- Samsung Galaxy Watch8 és Watch8 Classic – lelkes hiperaktivitás
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Apple Watch
- Milyen okostelefont vegyek?
- Samsung Galaxy S22 Ultra - na, kinél van toll?
- Motorola Edge 50 Fusion - jó fogás
-
Mobilarena

Új hozzászólás Aktív témák
-
Jim-Y
veterán
Sziasztok
PowerShellben csináltam egy olyan scriptet ami egy directoryban rekurzívan megnézi a duplikációkat, és a duplikált állományok nevét kigyűjti egy fájlba.
A problémám az, hogy az algoritmus amit használtam/írtam nagyon lassú. Ha ~2000 fájlt kell összehasonlítania az még viszonylag gyors 10,15mp, de 5500 állománnyal már percek óta szöszöl :S
megj: közben 2-3 perc múlva végzettAz ilyen rekurzív összehasonlítgatós dolgokat hogyan lenne célszerű megoldani?
Jelenleg a kódom:
$loc = get-location
$files = get-childitem -Path $loc -Recurse | where {$_.Length -gt 0}
$length = $files.length
$multiples = @()
for($i=0;$i -lt $length;++$i){
$ismultiple = 0
if($multiples -contains $files[$i].Name){ } else {
$elem = $files[$i]
for($j=$i+1;$j -lt $length;++$j){
if($files[$j].Name -eq $elem.Name -and $files[$j].Length -eq $elem.Length){
$multiples += $files[$j].FullName
$ismultiple = 1
}
}
if($ismultiple){
$multiples += $elem.FullName
$multiples += "`r`n`r`n"
}
}
}
$multiples > multiples.txtLátható, hogy először kigyűjtöm a fájlneveket egy tömbbe, majd az első rekordot keresem a fennmaradó elemek között, ha van duplikáció, akkor kiírom azokat a fájlba, és ugrok a második elemre.
Szinte biztos vagyok benne, hogy van ennél hatásosabb módszer, de már túl késő van ahhoz, hogy rájöjjek, hogy mi az
megj: haha, lehet csak azért szöszölt annyit, mert muter fél mappája duplikált, egy rahedli duplikációja van

Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Transcend 128GB M.2 SSD // Számla // Garancia //
- HIBÁTLAN iPhone 17 Pro Max 256GB Deep Blue-1 ÉV GARANCIA - Kártyafüggetlen, 100% Akksi
- Samsung Galaxy A56 5G Awesome Graphite 128GB használt karcmentes 6 hónap garancia
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- MS SQL Server 2016, 2017, 2019
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest





