如何将shell的变量当命令执行

########以下是脚本##
#/bin/bash
#filename test.sh
cmd1="cd /home/skybug"
cmd2="ls -al"
${cmd1}
${cmd2}
#########以上是脚本内容###
sh test.sh
可以看到 cmd1 cmd2 都执行了
如果是
###########
以下是脚本##
#/bin/bash
#filename test.sh
cmd1="cd /home/skybug &&   ls -al"
${cmd1}
########### 
以上是脚本内容###
sh test.sh
会发现没有执行。
把cmd1重定向到awk后用system()函数来执行
###########以下是脚本##
#/bin/bash
#filename test.sh
cmd1="cd /home/skybug && ls -al"
echo ${cmd1} |awk ‘{run=$0;system(run)}’  #$0为整行,把整行内容赋值给run变量然后system(run)来执行全部命令
########## 以上是脚本内容###
sh test.sh看结果
可执行


      本文转自天山三害 51CTO博客,原文链接:http://blog.51cto.com/skybug/1337783 ,如需转载请自行联系原作者




  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值