Sort files by spreadsheet I have a folder than contains over 1000 text files. The text files are supposed to be organised in folders.

I have a spreadsheet which states which text file goes in which folder:



Is there any way I can make the "Finder" respond to this spreadsheet, so it puts the correct file in the correct folder.  Maybe something involving Applescript or the terminal? It's just a simple "Apple Numbers" spreadsheet, so I can copy and paste the data out into something else.
The following assumes that neither file nor folder names contain comas (,) and that the exported CSV file uses , as the separator.

As small errors can lead to unexpected results and data loss it's recommended to make a backup first.


Remove any additional columns, header lines and empty lines at the end from your table (so it only contains two columns with file name and folder name respectively)
Export the data as a CSV file named files.csv into the folder containing the text files
Open Terminal
cd into/the/folder
Run perl -pi -e 's/\r\n/\n/;' files.csv to convert the CSV from DOS-like line ending to the standard Unix style
Copy/paste the following (test code, will not create/move anything)

while IFS=, read file folder; do
    # if the folder doesn't exist yet -&gt; create it
    [[ -d "$folder" ]] || echo mkdir "$folder"
    # if file exists -&gt; move it
    if [[ -r "$file" ]]; then
        echo mv "$file" "$folder"/
    else
        echo "Uups, $file not found"
    fi
done &lt; files.csv

If the output looks ok (especially if no "Uups, xxx not found" output is shown, nor any other error messages), run

while IFS=, read file folder; do
    [[ -d "$folder" ]] || mkdir "$folder"
    if [[ -r "$file" ]]; then
        mv "$file" "$folder"/
    else
        echo "Uups, $file not found"
    fi
done &lt; files.csv