Saludos..
Esta vez esxcribire unas lineas de comandos que utilizo en Microsoft Powershell a la hora de revisar respaldos que tengan archivos duplicados y mp3, ocupando demasiado espacio para mi respaldo.
Mi ejemplo utilizará como carpeta principal c:Arespaldar en la cual se supone que tendre unos archivos de mp3 y fotos repetidas, carpetas vacias y archivos con caracteres especiales.
Al ya tener la idea de como se maneja el comando en realidad se vuelve facil, la cosa es cuando lo comienzas a conocer que no entiendes mucho a pesar de que facil..
Primeramente comenzare a borrar todos esos archivos y caracteres que no necesito. En este caso los temporales, las caratulas, caracteres, mp3.
Get-ChildItem -Path c:Arespaldar -include *.tmp, AlbumArt*, desktop.ini, Thumbs.db, ~$* , .~*, ~*,*.mp3 -Recurse -Force | Remove-Item -force
Cambiarè los caracteres piso (_) y los acentos en las a.
Get-ChildItem -Path c:Arespaldar -Recurse | Where-Object {$_.Name -match '_' } | Rename-Item -NewName { $_.Name -replace '_','-' } -force
Get-ChildItem -Path c:Arespaldar -Recurse | Where-Object {$_.Name -match 'á' } | Rename-Item -NewName { $_.Name -replace 'á','a' } -force
Borramos las carpetas vacias.
Get-ChildItem -Path c:Arespaldar -force -recurse | Where-Object {$_.PSIsContainer -eq $True }| Where-Object {$_.GetFiles().Count -eq 0} | Remove-Item -force
Identificamos los archivos repetidos. Aunque pueden pasar directo al siguiente paso. Este es solo para asegurarse de lo que se va a borrar.
Get-ChildItem -Path c:Arespaldar -recurse | get-filehash | group -property hash | where { $_.count -gt 1 } | % { $_.group | select -skip 1 } | Remove-Item -whatif
Borramos los Duplicados.
Get-ChildItem -Path c:Arespaldar -recurse | get-filehash | group -property hash | where { $_.count -gt 1 } | % { $_.group | select -skip 1 } | Remove-Item
Y listo... hemos borrado los mp3. temporales, archivos basura, carpetas vacias, duplicados y ademas le quitamos el acento a las a.
Esta vez esxcribire unas lineas de comandos que utilizo en Microsoft Powershell a la hora de revisar respaldos que tengan archivos duplicados y mp3, ocupando demasiado espacio para mi respaldo.
Mi ejemplo utilizará como carpeta principal c:Arespaldar en la cual se supone que tendre unos archivos de mp3 y fotos repetidas, carpetas vacias y archivos con caracteres especiales.
Al ya tener la idea de como se maneja el comando en realidad se vuelve facil, la cosa es cuando lo comienzas a conocer que no entiendes mucho a pesar de que facil..
Primeramente comenzare a borrar todos esos archivos y caracteres que no necesito. En este caso los temporales, las caratulas, caracteres, mp3.
Get-ChildItem -Path c:Arespaldar -include *.tmp, AlbumArt*, desktop.ini, Thumbs.db, ~$* , .~*, ~*,*.mp3 -Recurse -Force | Remove-Item -force
Cambiarè los caracteres piso (_) y los acentos en las a.
Get-ChildItem -Path c:Arespaldar -Recurse | Where-Object {$_.Name -match '_' } | Rename-Item -NewName { $_.Name -replace '_','-' } -force
Get-ChildItem -Path c:Arespaldar -Recurse | Where-Object {$_.Name -match 'á' } | Rename-Item -NewName { $_.Name -replace 'á','a' } -force
Borramos las carpetas vacias.
Get-ChildItem -Path c:Arespaldar -force -recurse | Where-Object {$_.PSIsContainer -eq $True }| Where-Object {$_.GetFiles().Count -eq 0} | Remove-Item -force
Identificamos los archivos repetidos. Aunque pueden pasar directo al siguiente paso. Este es solo para asegurarse de lo que se va a borrar.
Get-ChildItem -Path c:Arespaldar -recurse | get-filehash | group -property hash | where { $_.count -gt 1 } | % { $_.group | select -skip 1 } | Remove-Item -whatif
Borramos los Duplicados.
Get-ChildItem -Path c:Arespaldar -recurse | get-filehash | group -property hash | where { $_.count -gt 1 } | % { $_.group | select -skip 1 } | Remove-Item
Y listo... hemos borrado los mp3. temporales, archivos basura, carpetas vacias, duplicados y ademas le quitamos el acento a las a.