https://unix.stackexchange.com/questions/23111/what-is-the-eval-command-in-bash bash man page: eval [arg ...] The args are read and concatenated together into a single com- mand. This command is then read and executed by the shell, and its exit status is returned as the value of eval. If there are no args, or only null arguments, eval returns 0. This is a common function in many languages, e.g. Perl and JavaScript. Have a look at perldoc eval for more examples: http://perldoc.perl.org/functions/eval.html Last but not least, eval can be a very dangerous command. Any input to an eval command must be carefully checked to avoid security problems.