Shell教程

Shell eval命令

Shell Scripting eval命令

eval 命令是一个内置命令。它接受一个字符串作为它的参数并计算它,然后运行存储在参数中的命令。它允许将变量的值用作变量。
示例 1:
eval echo \${$User}
Linux Shell Scripting eval 1
看上面的截图,命​​令"echo \${$User}" 将 $User 作为 shell 变量运行并显示其输出。
但是命令 "eval echo \${$User}" 运行传递给 eval 的参数。展开后,剩下的参数是echo 和${Hello}。因此 eval 命令运行命令 echo ${Hello}。因此输出是 X 先生
双引号 必须用于变量和命令替换。如果没有双引号,shell 可能会对变量的不同单词进行字段拆分。
Linux Shell Scripting eval 2
示例 2:
Linux Shell Scripting eval 3
看上面的快照,我们已将参数(1 周前)传递给 date 命令。这是显示的上周日期和时间。
但是当我们在变量(lastweek)中设置此命令并运行它时,该命令无法打印日期。往下看,
Linux Shell Scripting eval 4
看上面的快照,命令"$lastweek" 失败,而命令 "eval $lastweek" 成功运行。

(( ))

此符号主要用于数值评价。
Linux Shell Scripting eval 5
看上面的截图,单括号( ) 在双括号 (( )) 成功执行命令时出错。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4