J'ai un dossier F:\Music avec beaucoup de sous-dossiers, certains d'entre eux contiennent la chaîne [flac] dans leur nom de dossier, j'aime déplacer tous les dossiers avec leur contenu, qui contiennent la chaîne [flac], dans un nouveau dossier tout en conservant toutes les structures de dossiers. Certains chemins vont plus profondément que juste un seul dossier.
get-item "F:\Music\*\*[flac]" |
foreach ($_){
$oldpath = $_.FullName;
$newpath = "F:\Musicflac\"+$_.Parent;
robocopy $oldpath $newpath /MOVE /E
}
Après avoir cherché et essayé, je suis arrivé à ce script PS, qui ne renvoie aucune erreur mais aussi aucun résultat. J'ai trouvé un sujet similaire mais cela fonctionne uniquement en bash : Move folders containing files with extension. Je suis complètement nouveau en PowerShell.
Éditer 1:
J'ai également essayé avec Move-Item :
$paths = Get-ChildItem "F:\Music\*\*[flac]" | select fullname | ForEach-Object {$_.fullname}
$destination = "F:\Musicflac\"
foreach ($path in $paths){
Move-Item $path -Destination $destination
}
Encore une fois, rien ne se passe, les difficultés pour moi sont : le doit contenir la chaîne [flac] et le garder la structure des dossiers.
Éditer 2:
Votre script a donné des erreurs au départ mais après quelques ajustements j'ai enfin obtenu des résultats:
gci "F:\Zandbak\Music\" -directory -recurse -filter '*[flac]*' |
%{
#calculer le nouveau chemin
$newpath = $_.fullname -replace 'Music', 'Musicflac'
#vérifier si le nouveau chemin existe, sinon le créer
if(!(test-path -Path $newpath)){ new-item $newpath -itemType directory }
#déplacer le dossier et son contenu vers un autre dossier
Move-Item -Path $_.FullName -Destination $newpath
}
Plus d'erreurs et les bons dossiers dans le répertoire Musicflac sont créés! Malheureusement, les fichiers dans les dossiers ne sont pas déplacés avec les dossiers, seuls des dossiers vides sont créés.
Des conseils pour déplacer également le contenu des dossiers?
Éditer 3:
structure du répertoire:
F:\Zandbak\Music\A Winged Victory for the Sullen\2011 A winged victory for the sullen
F:\Zandbak\Music\A Winged Victory for the Sullen\2011 A winged victory for the sullen [flac]
F:\Zandbak\Music\A Winged Victory for the Sullen\2011 A winged victory for the sullen\2014 Atomos IXII
F:\Zandbak\Music\A Winged Victory for the Sullen\2011 A winged victory for the sullen\2014 Atomos IXII [FLAC]
F:\Zandbak\Musicflac