There are plenty of one liners but sometimes I like to throw a more easily loggable process into the mix. Especially if it is an enormous list of files that will take many hours to copy/move. I like to have a record. So if that is how you would like to approach it:
Get the filelist to operate on (adjust to fit need):
Code:
find . -name \*.zip > filelist
Make a shell script to move a file at a time from the filelist and record all output to 'results'.
I like to use 'cp' to test my script logic, and then change it to 'mv' once I know it is working as expected. So this script will only COPY. Change the command to MOVE them once you like the results.
Code:
set -x
while read -r filename
do
cp -v $filename /mnt/directory/ >> results 2>&1
done < filelist
Make the script executable and run the script and capture all of its output as well.
Code:
chmod +x script.sh
./script.sh | tee script.out