## eval用法三例 ## ## shell:/bin/sh ## ## yhc : ## #例一: #寻找合符条件的变量名然后将该变量的值赋予另一变量 v=aaa v=bbb c= if [ $c eq ] then vname=v$c #找到符合条件的变量名为v eval vvv=$$vname ; echo vvv: $vvv #将变量v的值赋予vvv即使vvv=aaa eval vvv=$$vname ; echo vvv: $vvv #将变量v的值赋予vvv即使vvv=aaa #eval vvv=$$vname ; echo vvv: $vvv #错误用法 fi #例二:#以变量v的值aaa作为变量名将变量vaaa的值赋予这一新定义的变量aaa v=aaa ; vaaa=This is aaa #eval $v=$vaaa ; echo aaa: $aaa #错误用法 #eval $v=$vaaa ; echo aaa: $aaa #错误用法 eval $v=$vaaa ; echo aaa: $aaa #例三: #以变量v的值aaa作为变量名并将变量名字串作为值赋予自身 v=aaa ; vaaa=This is aaa eval $v=$v ; echo aaa: $aaa #与例二的错误用法不同这一用法是正确的 eval $v=$v ; echo aaa: $aaa #与例二的错误用法不同这一用法是正确的 eval $v=$v ; echo aaa: $aaa |