![如何通过命令替换执行一串 bash 命令](https://linux22.com/image/204985/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%E5%91%BD%E4%BB%A4%E6%9B%BF%E6%8D%A2%E6%89%A7%E8%A1%8C%E4%B8%80%E4%B8%B2%20bash%20%E5%91%BD%E4%BB%A4.png)
假设我有一个像这样的 bash 变量:
tmp1='$(echo foo)'
或者
tmp2='`echo foo`'
如何达到foo
这样的效果?
我知道从字符串中删除命令替换应该可行,但是除此之外还有其他方法吗?
答案1
这有效:
eval "echo $tmp"
或者
bash -c "echo $tmp"
我是一个朋友告诉我的。
假设我有一个像这样的 bash 变量:
tmp1='$(echo foo)'
或者
tmp2='`echo foo`'
如何达到foo
这样的效果?
我知道从字符串中删除命令替换应该可行,但是除此之外还有其他方法吗?
这有效:
eval "echo $tmp"
或者
bash -c "echo $tmp"
我是一个朋友告诉我的。