0

I'm looking for a program that can detect and move files out of multiple folders at once. Due to a mishap with a music tagging software, my music library is in a total mess. My files are now spread out through thousands of folders, each one of which has between 2-10 subfolders, within which my music files are. I'd like to collect them in one place again without having to go through each folder. Thus, I'm looking for a program that can detect all files in a folder and it's subfolders, move the files to a separate location, and as a bonus delete the now empty directories from which the files were moved.

Aha, Solved. Thank you everyone for your help. It was actually a simple matter of specifying a target directory for Picard to move the files before tagging them, an option which I had overlooked. Once again, thank you everyone for your help!

  • You could write a batch script to traverse a folder tree and move all files that it finds to a different location. – Vladimir Oselsky Jan 8 '14 at 21:54
1

You have not mentioned about target directory. So I am assuming you want all the files to be in single directory with not hierarchy at all.

In that case, its insanely simple! Just use good old windows search for *.mp3 (and whatever music extensions you have) on the parent directory of collection. Once you get the results, select all, cut and paste into some dir which is outside your music parent directory.

Even if you want directory hierarchy, its still better to move them all into single directory and then have something like Picard do the job from scratch.

| improve this answer | |
0

OPTION 1

This is one of the methods I used when I had the same problem with my music library.

Running this code in the command line at the root directory of the folders you want to flatten:

for /r %f in (*) do @copy "%f" .

Turns a folder structure like this:

Folder0 
      Folder1 
            File1.1.txt 
            File1.2.txt 
            FolderA 
                  FileA.txt 
            FolderB 
                  FileB.1.txt 
                  FileB.2.txt 
      Folder2 
            FolderC 
            FileC.txt

into something like this:

Folder0 
      File1.1.txt 
      File1.2.txt 
      FileA.txt 
      FileB.1.txt 
      FileB.2.txt 
      FileC.txt 
      Folder1 
      Folder2

There are a few more advanced methods available here:

http://mlichtenberg.wordpress.com/2011/01/25/command-line-fun-how-to-flatten-a-folder-hierarchy/


OPTION 2

Alternatively, you might find that simply running that folder back through a robust music tagging software (Musicbrainz Picard - my personal favourite) that is set up correctly would fix your issue without having to delve into the command line.

Having tried both, I would probably go with this method. It may be a little more hands on, but it has less chance of something dramatic happening.

The settings in the picture below should work in restoring your albums to their correct positions. However, I do recommend setting the Move files to this directory when saving: field to somewhere that isn't your default music directory. This will force it to create new folders for it to save into. From there, you can just follow the standard Picard Quick Start Guide.

Remember: Picard doesn't automatically save anything. Check the right-hand panel for gold albums, these are matched correctly. If you have any silver albums, these are incomplete or missing tracks.

Picard settings.


OPTION 3

Using a File Browser replacement program (such as Fileboss - again, a program I have used) that has a built in Flatten Folder function.

| improve this answer | |
  • Picard is exactly the program I was using. Everytime I used it, it was creating a new folder inside the previous folder, and moving the music files into it. Thus, 5 uses resulted in every file being buried beneath 5 subdirectories, and so on. I was thinking of moving all the files to one location and using Picard on them again, but is there a way to configure picard to fix the problem for me? – 123 Jan 8 '14 at 22:12
  • Sounds like your save to... path is not set correctly. I don't have Picard installed here at work, but can definitely take a look when I get home to give you a better answer. – Michael Frank Jan 8 '14 at 22:16
  • @123 Updated my answer to include some basic pointers for Picard. – Michael Frank Jan 10 '14 at 0:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.