linux eval

eval 就是执行以下两个步骤 1.第一次,执行变量替换,类似与C语言的宏替代

2.第二次,执行替换后的命令串

#!/bin/bash

g="|"
eval ls $g wc -l
#1.变量替换      eval ls | wc -l
#2.执行命令结果

echo \$$#          #输出命令个数
eval echo \$$#     #输出最后一个命名
#1.变量替换: echo $n
#2.执行命令结果

com="cat eval.sh"
echo $com
eval $com           #输出文件内容
eval echo $($com)   #测试啥输出也没有  why? 命令echo $(cat eval.sh)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏决胜机器学习

Redis专题(四) ——Redis排序、消息队列、优化存储

Redis专题(四) ——Redis排序、消息队列、优化存储 (原创内容,转载请注明来源,谢谢) 一、排序 1、命令 SORTkey [A...

66580
来自专栏电光石火

获取URL地址中的GET参数

/*-----------------实现1--------------------*/ function getPar(par){ //获取当前URL...

22190
来自专栏Petrichor的专栏

numpy: IO模块

  NumPy 为 ndarray对象 引入了一个简单的文件格式。 这个npy文件在磁盘文件中,存储重建ndarray所需的数据、图形、dtype和其他信息,以...

14420
来自专栏angularejs学习篇

angularjs学习第六天笔记(指令简介学习)

  您好,由于周末有事情,没哟学习angularjs,几天晚上开始继续学习angularjs,坚持加油每一天。谢谢

9310
来自专栏猛牛哥的博客

升级php7.1.*后phpcms V9编辑文章出错的解决方法

53230
来自专栏对角另一面

lodash源码分析之缓存方式的选择

本文为读 lodash 源码的第八篇,后续文章会更新到这个仓库中,欢迎 star:pocket-lodash

20590
来自专栏企鹅号快讯

Linux基础(五)

一、shell编程基础 1、shell编程 程序=指令+数据 编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell...

19480
来自专栏好好学java的技术栈

「附数据结构资源」玩转java并发(六):深入线程Thread类的start()方法和run()方法

java的线程是通过java.lang.Thread类来实现的。VM启动时会有一个由主方法所定义的线程。可以通过创建Thread的实例来创建新的线程。每个线程都...

11420
来自专栏angularejs学习篇

angularjs学习第六天笔记(指令简介学习)

  您好,由于周末有事情,没哟学习angularjs,几天晚上开始继续学习angularjs,坚持加油每一天。谢谢

11320
来自专栏Linyb极客之路

并发编程之volatile关键字

一、Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。 Java内存模型规定了所有的变量都存储在主内存中...

36350

扫码关注云+社区

领取腾讯云代金券