当前位置:首页 > CN2资讯 > 正文内容

linux evtest下载 linux eval

2天前CN2资讯


1. eval command-line

其中command-line是在终端上键入的一条普通命令行。然而当在它前面放上eval时,其结果是shell在执行命令行之前扫描它两次。eval命令将会首先扫描命令行进行所有的替换,然后再执行命令。该命令使用于那些一次扫描无法实现其功能的变量。该命令对变量进行两次扫描。这些需要进行两次扫描的变量有时候被称为复杂变量。如:

pipe="|"

eval ls $pipe wc -l

如图:

shell第1次扫描命令行时,它替换出pipe的值|,接着eval使它再次扫描命令行,这时shell把|作为管道符号了。

如果变量中包含任何需要shell直接在命令行中看到的字符(不是替换的结果),就可以使用eval。命令行结束符(;| &),I/o重定向符(< >)和引号就属于对shell具有特殊意义的符号,必须直接出现在命令行中。

eval也可以用于回显简单变量,不一定是复杂变量。

如:

NAME=NO

eval echo $NAME等价于echo $NAME

2. eval echo \$$#取得最后一个参数

如:cat last

eval echo \$$#

./last one two three four

four

如图:

第一遍扫描后,shell把反斜杠去掉了。当shell再次扫描该行时,它替换了$4的值,并执行echo命令

3.以下示意如何用eval命令创建指向变量的“指针”:

x=100

ptrx=x

eval echo \$$ptrx指向ptrx,用这里的方法可以理解b中的例子

100 打印100

eval $ptrx=50将50存到ptrx指向的变量中。

echo $x

50 打印50

如图:


【与``和$()的区别】



在$(命令)中,命令部分的内容不会被父shell解析,而反引号的部分却会被解析,例如`\`,`$`,```

举个例子

> $(echo "first second"|awk "\$2==\"second\" {print $1}") 执行是成功的,执行结果为first

> a=`echo "first second"|awk "\$2==\"second\" {print $1}"`执行失败

> awk: line 1: syntax error at or near ==

原因是反引号内的内容会被父shell解释,所以\$2被父shell解释后变成了$2, 而$2在子shell里面是会被解析的,而默认的

$2代表子shell的第二个参数,显然为空,然后继续被awk解释,然后就报了上述的错误

其实还有另外一个错误,print $1,这里的$符号也是要被父shell解释的,则是不对的

最后改为

> `echo "first second"|awk "\\$2==\"second\" {print \\$2}`

    1.反引号其本身就对\进行了转义,保留了其本身意思,如果我们想在反引号中起到\的特殊意义,我们必须使用2个\来进行表示。

    2.所以我们可以简单的想象成反引号中: \\ = \

    3.$()中则不需要考虑\的问题,与我们平常使用的一样:\ = \






    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/25504.html

    分享给朋友:

    “linux evtest下载 linux eval” 的相关文章

    RackNerd主机服务评测:高性价比与卓越客户体验

    RackNerd是一家自2019年成立以来便迅速崛起的美国主机商。每当我想起这家公司,心中总是浮现出他们以高性价比著称的形象。初次接触时,我对他们的服务种类印象深刻:虚拟主机、VPS主机、独立服务器和服务器托管等。这些服务能满足不同行业和客户的需求,尤其是对预算有限的小型企业或创业者而言,RackN...

    国内VPS全解析:选择最佳虚拟专用服务器的指南

    国内VPS的概述 VPS,或者说虚拟专用服务器,是一种将一台物理服务器分割成多个虚拟服务器,以便多个用户可以共同使用。这样的设定不仅能够充分利用服务器的资源,还为用户提供了更高的灵活性与控制权。对于希望在网上进行业务拓展或个人项目的朋友们来说,国内VPS是一个非常合适的选择。 国内VPS的市场发展迅...

    DMIT测试IP详解及VPS选择指南

    DMIT VPS服务概述 我对DMIT的了解始于他们在2017年的成立,作为一家海外VPS厂商,他们在市场上取得了显著的地位。DMIT提供的VPS服务覆盖多个地区,如中国香港、美国洛杉矶和日本东京。这些服务以对国内用户友好的优化路线而受到好评,尤其是CN2 GIA和CMIN2线路,这些线路减少了延迟...

    BT下载机的使用技巧与软件下载推荐

    在数字时代,文件共享变得越来越普遍,BT下载机作为一种基于BitTorrent协议的P2P(Peer-to-Peer)文件共享工具,扮演着重要的角色。我记得第一次接触BT下载机时,发现它的操作不仅简单,还能快速下载大型文件,这让我对它产生了浓厚的兴趣。BT下载机允许用户通过种子文件(.torrent...

    阿里云优惠券使用指南 - 如何获取和利用阿里云优惠券

    在当今数字化快速发展的情况下,越来越多的企业和个人选择迁移到云端,以提高业务效率和降低运营成本。而在众多云服务提供商中,阿里云以其领先的技术和丰富的服务,赢得了广泛的用户基础。在这个过程中,阿里云优惠券成为了降低上云成本的重要工具。 阿里云的优惠券种类繁多,针对不同用户群体提供了各种适合的优惠方案。...

    甲骨文云免费IPv6服务详解:轻松配置与应用技巧

    甲骨文云,作为一个综合性的云服务提供商,正迅速崛起于众多的云技术平台之中。它不仅拥有强大的数据处理能力,还提供了多种免费的云服务选项,让个人和企业都能以更低的成本探索并使用云计算的强大功能。首先,我对甲骨文云的快速适应能力和多种灵活服务感到印象深刻,尤其是它的免费套餐项目,吸引了不少用户前来试用。...