eval
Linux eval命令用于重新运算求出参数的内容。
eval可读取一连串的参数,然后再依参数本身的特性来执行。
语法
eval [参数]
参数说明:参数不限数目,彼此之间用分号分开。
当在它前面放上 eval时,其结果是shell在执行命令行之前扫描它两次。如:
pipe="|"
eval ls $pipe wc -l
shell第1次扫描命令行时,它替换出pipe的值|,接着eval使它再次扫描命令行,这时shell把|作为管道符号了。
如果变量中包含任何需要shell直接在命令行中看到的字符(不是替换的结果),就可以使用eval。命令行结束符(;| &),I**/o重定向符(< >)和引号就属于对shell****具有特殊意义的符号,必须直接出现在命令行中。**
https://www.cnblogs.com/triple-y/p/11236082.html
实例
连接多个命令
# eval enable;ls //连接多个命令
enable .
enable :
enable [
enable alias
enable bg
enable bind
enable break
enable builtin
enable caller
enable cd
enable command
enable compgen
enable complete
enable compopt
enable continue
enable declare
enable dirs
enable disown
enable echo
enable enable
enable eval
enable exec
enable exit
enable export
enable false
enable fc
enable fg
enable getopts
enable hash
enable help
enable history
enable jobs
enable kill
enable let
enable local
enable logout
enable mapfile
enable popd
enable printf
enable pushd
enable pwd
enable read
enable readarray
enable readonly
enable return
enable set
enable shift
enable shopt
enable source
enable suspend
enable test
enable times
enable trap
enable true
enable type
enable typeset
enable ulimit
enable umask
enable unalias
enable unset
enable wait
0