Bash: Loop over files listed in a text file and move them
directory of the script should be the your location of the files
TO_B=file1.txt
TO_C=file2.txt
for file in $TO_B
do
mv ${file} B/
done
for file in $TO_C
do
mv ${file} C/
done
BASH FAQ entry #1: "How can I read a file (data stream, variable) line-by-line (and/or field-by-field)?"
If the filename will remain the same then the second argument to mv
can be just the directory.
cat file-list.txt | while read i; do
# TODO: your "mv" command here. "$i" will be a line from
# the text file.
done