Name
eval
Synopsis
eval args
Typically, eval is used in shell scripts, and args is a line of code that contains shell variables. eval forces variable expansion to happen first and then runs the resulting command. This "double-scanning" is useful any time shell variables contain input/output redirection symbols, aliases, or other shell variables. (For example, redirection normally happens before variable expansion, so a variable containing redirection symbols must be expanded first using eval; otherwise, the redirection symbols remain uninterpreted.)
Example
This fragment of a shell script shows how eval constructs a command that is interpreted in the right order:
for option
do
case "$option" in Define where output goes
save) out=′ > $newfile′ ;;
show) out=′ | more′ ;;
esac
done
eval sort $file $out
Get bash Quick Reference now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.