Windows 7 Ultimate 64bit:
I'm looking for a way to find all the files in a directory that are NOT of a specific file type or extension.
Example: I'd like to find every file that isn't an .mp3 in my music folder (and all sub folders).
From a command prompt you can pipe the direcotry list into findstr, and use findstr's V switch to exclude lines like the filter (in this case, lines ending in .mp3), as well as the I switch to make the find procedure case-insensitive.
dir | findstr /vi "*.mp3"
I just open the folder with Windows Explorer, add the Type column to the display, and sort on it.
You could try
xcopy /L /EXCLUDE:.mp3 /S DIRNAME .
The /L flag forces xcopy to only list but not copy the /s runs through all subfolders and the exclude misses out mp3s
For a quick look I sort by clicking on the type column header in Explorer. There is a pull down option to tick boxes for only the files you want listed.
You can check a mime-type with:
file -i <YourFile> -F "::" | sed 's/.*:: //' | sed 's/;.*//'
and then write a script.