The reason this occurs is because bash actually expands the asterisk to every matching file, producing a very long command line.

Solution

find Path/to/source-folder/  -name '*.*' -exec mv {} Path/to/destination-folder/ \;
Comments