Почему find: paths must precede expression?
а то что в find уже есть вшитый алгоритм + дней - дней вас не смущает?
find. / -mtime +n  
find ./ -mtime -n
На крайняк  file ./ -mtime +n  -exec find -mtime -n file {} \;
Что конкретно пытаетесь сделать ?
Командную строку запускаете в Bash. 
В нем !  это запуск предыдущей команды, после чего на запуск отдается совсем не то, что  Вы набрали.  Необходимо маскировать ! .
find . -newermt $DATE1 \! -newermt $DATE2 -ls