supporting -exec, make it simpler