源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Shell中eval的用法示例

  • 时间:2021-02-09 07:34 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Shell中eval的用法示例
功能说明:告知shell取出eval的参数,重新运算求出参数的内容。 语  法:eval [参数] 补充说明:eval可读取一连串的参数,然后再依参数本身的特性来执行。 参  数:参数不限数目,彼此之间用分号分开。 1.执行命令行之前扫描它两次,再次运算求出参数的内容。
[u]复制代码[/u] 代码如下:
[root@localhost blue]# a="ls |more" [root@localhost blue]# $a                                           #ls
将 | 和 more 看成了参数,而不是将文件按页显示
[u]复制代码[/u] 代码如下:
ls: cannot access |more: No such file or directory [root@localhost blue]# eval $a                                    #取出
其参数并再次执行它们
[u]复制代码[/u] 代码如下:
1 1.cpp 2 2.cpp 3 3.cpp [root@localhost test]# a="123" [root@localhost test]# echo '${'"a"'}'                         ${a} [root@localhost test]# eval echo '${'"a"'}'                #再次执行${a}命令 123 
2.eval取得最后一个参数
[u]复制代码[/u] 代码如下:
[root@localhost blue]# echo 'eval echo \$$#' > last [root@localhost blue]# cat last eval echo \$$# [root@localhost blue]# ./last 1 2 3 4 4
另外其他高级用法后作补充! eval是对Bash Shell命令行处理规则的灵活应用,进而构造"智能"命令实现复杂的功能。 上面提及的命令是eval其中一个很普通的应用,它重复了1次命令行参数传递过程,纯粹地执行命令的命令。 其实它是bash的难点,是高级bash程序员的必修之技。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部