`
fujinbing
  • 浏览: 237305 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

eval 的用法

阅读更多

shell 脚本

#!/bin/sh

 

v1=aaa
vaaa="bb"
eval pa="$"v$v1
echo $pa

 

输出结果 bb

 

 

 

eval用法三例

## eval用法三例 ##
## shell:/bin/sh ##
## yhc 2002.09.26 18:00 ##

#例一:
#寻找符合条件的变量名,然后将该变量的值赋予另一变量
v1=aaa
v2=bbb
c=1
if [ $c -eq 1 ]
then
vname=v$c #找到符合条件的变量名为v1
eval vvv="$"$vname ; echo vvv: $vvv #将变量v1的值赋予vvv,即,使vvv=aaa
eval vvv='$'$vname ; echo vvv: $vvv #将变量v1的值赋予vvv,即,使vvv=aaa
#eval vvv=$$vname ; echo vvv: $vvv #错误用法
fi

#例二:#以变量v1的值aaa作为变量名,将变量vaaa的值赋予这一新定义的变量aaa
v1=aaa ; vaaa="This is aaa"
#eval $v1=$vaaa ; echo aaa: $aaa #错误用法
#eval $v1="$vaaa" ; echo aaa: $aaa #错误用法
eval $v1='$vaaa' ; echo aaa: $aaa

#例三:
#以变量v1的值aaa作为变量名,并将变量名字串作为值赋予自身
v1=aaa ; vaaa="This is aaa"
eval $v1=$v1 ; echo aaa: $aaa #与例二的错误用法不同,这一用法是正确的
eval $v1="$v1" ; echo aaa: $aaa #与例二的错误用法不同,这一用法是正确的
#区别在于,例二中的vaaa的值中间有空格
eval $v1='$v1' ; echo aaa: $aaa

 

 

eval的块语句用法

 

#!/bin/bash


(eval ":
(
test(){
echo "test"
}
test
)")

 

输出:

test

分享到:
评论

相关推荐

    eval使用方法 matlab

    eval使用方法 matlab

    [ASP_NET]DataBinder_Eval用法_學習 積累 進步

    1. **使用场景**:DataBinder.Eval通常用于模板字段(TemplateField)中,例如在GridView控件中,我们可以通过在BoundField或TemplateField中使用Eval方法来显示数据。 2. **示例**:假设我们有一个GridView,其...

    eval函数的一些用法

    本篇文章将深入探讨`eval()`函数的一些用法,并结合源码分析其工作原理和潜在的安全风险。 一、`eval()`函数的基本概念 `eval()`函数接收一个参数,这个参数必须是一个字符串。在执行时,`eval()`会将这个字符串...

    Javascript中eval函数的用法

    在上面的例子中,我们看到了一种使用 eval 函数来动态生成 JavaScript 代码的方法。我们使用 prompt 函数来获取用户的输入,然后使用 eval 函数来将用户的输入作为 JavaScript 代码来执行。这样,我们可以根据用户的...

    python重要函数eval多种用法解析

    这篇文章主要介绍了python重要函数eval多种用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.参数会作为一个 Python 表达式(从技术上说是一个条件...

    AB2Eval.exe

    VB Activebar2提供非常漂亮的工具栏,亲测可用使用,亲测可用使用,亲测可用使用,亲测可用使用,亲测可用使用

    java实现js中eval功能

    以上是使用Java实现JavaScript`eval`功能的基本思路和方法。需要注意的是,这种模拟`eval`的行为可能会带来安全风险,因为用户提供的输入可能包含恶意代码。因此,在实际应用中,务必对输入进行严格的验证和限制,...

    EVAL操作集合 包含Eval()的一些常用操作 常用函数

    2. 使用Eval()方法可以计算字符串,例如:<%# DataBinder.Eval(Container.DataItem, "[n]") %> 3. Eval()方法可以绑定字段,并实现自动编号,例如: 4. Eval()方法可以格式化字符串,例如:<%# DataBinder.Eval...

    eval 加密和解密

    在实际开发中,我们通常会使用专门的加密库,如JavaScript的CryptoJS或PHP的openssl扩展,它们提供了更安全且功能丰富的加密解密方法,而不是依赖于`eval`。 总的来说,理解并正确使用`eval`在加密解密中的角色是...

    pytorch:model.train和model.eval用法及区别详解

    在PyTorch中,`model.train()`和`model.eval()`是两个非常关键的方法,它们用于在训练和评估模型时切换不同的运行模式。理解这两者之间的差异对于有效地训练和测试深度学习模型至关重要。 首先,`model.train()`...

    使用NLG-Eval需要依赖的数据包

    在使用NLG_Eval之前,我们需要确保安装了必要的依赖数据包,以便该工具能正确运行并提供有效的评估结果。下面将详细介绍NLG_Eval以及其依赖的数据包,以及它们在NLG任务中的作用。 NLG_Eval是一个Python库,主要...

    揭秘ASP.NET 2.0的Eval方法.doc

    Eval方法最初定义在`TemplateControl`类中,由于`System.Web.UI.Page`和`System.Web.UI.UserControl`类均继承自`TemplateControl`,因此可以直接在这两个类中使用Eval方法。 #### 二、Eval方法在ASP.NET 2.0中的...

    java实现eval函数

    在Java中模拟`eval`功能的一个常见方法是通过使用Java Scripting API(JSR 223),它允许你在Java应用程序中嵌入和执行脚本语言,包括JavaScript。以下是一个简单的例子,展示了如何使用JSR 223来执行JavaScript代码...

    测试eval方法所以造成无法通过google closure compiler编译

    2. 使用`window.eval()`:在某些情况下,如果必须使用`eval()`,可以将它限制在全局作用域,通过`window.eval()`调用,这样Closure Compiler可以识别这是一个全局操作。 3. 使用`@nocache`注释:在`eval()`前添加`/...

    DataBinder.Eval总结

    下面我们将深入探讨DataBinder.Eval的各种用法和实现细节。 ### 一、DataBinder.Eval的基本格式 DataBinder.Eval的常用语法有以下几种: 1. `<%# DataBinder.Eval(Container.DataItem,"xxxx")%>`:这是最基础的...

    在Web控件模板中使用Eval()方法绑定数据

    **二、`Eval()`方法的高级用法** 1. **多级数据绑定**:`Eval()`方法可以处理复杂的数据结构,如对象数组或嵌套对象。通过指定路径,如`Eval("Employee.Name")`,可以从对象的属性中获取值。 2. **使用表达式**:`...

    在Javascript中Eval函数的使用.doc

    `eval()`的基本用法是接收一个字符串参数,这个字符串被视为JavaScript代码,并在当前作用域内执行。例如,上面的例子展示了如何使用`eval()`计算字符串中的数学表达式: ```javascript var the_unevaled_answer = ...

    rank-eval-client-6.2.3-API文档-中英对照版.zip

    使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

Global site tag (gtag.js) - Google Analytics