I want to move all files matching a certain pattern in the current directory to another directory.
For example, how would I move all the files starting with
mv nz* foobar/
This will do it, though if you have any directories beginning with nz it will move those too.
for files in nz*
do
mv $files foobar
done
Edit: As shown above this totally over the top. However, for more complex pattern matches you might do something like:
for files in `ls | grep [regexp]`
do
mv $files foobar
done
mv nz* foobar
should do it.
mv nz* foobar/
Try to use "mmv", which is installed on most Linux distros.
find . | grep "your_pattern" | xargs mv destination_directory
Does the following: