I have used production batch processing systems that routinely store enough files that
ls *5*
will fail because the argument list was too big for execve(2). Would I design it that way? No, but people do (sometimes without really thinking about it), and you still have to get work done.New users should be taught find(1) because it always works.