Ultimately Ant will be calling native code for any file operation - all processes have to. Since Ant is another layer on top of this code you could casually assume it will perform worse. However, I'll bet the performance differences will be negligable. Of course I have no proof for that statement, you could write some tests and try to prove me right/wrong?
However, I'd suggest how a build performs is less of a concern (unless it is too poor to use on a day to day basis). Maintaining more than one build script is a recipe for bugs: more than one build script inevitably ends up with more than one artifact being built as developers forget to update all scripts, or a script goes a while without being tested on a particular platform etc.
If you know your build task is Unix only (and will remain that way) then a shell script is a fine solution; it will give you more funtionality than Ant out the box and you don't need to install things like a JRE to get the shell script to run.