如何动态计算变量的值并在命令中使用它?

How to dynamically compute value of a variable and use it in a command?

将我正在尝试做的事情简化为一个简单的例子:

env temp=`pwd` echo "$temp"

我收到这条消息:

temp: Undefined variable.

如何让它工作(以 shell 不可知的方式)?我期待打印 pwd 的结果。

我的实际要求使用复杂的表达式代替 pwd,使用脚本代替“echo”,并将变量 $temp 作为该脚本的参数。

此外,我只想为这个单个命令设置这个变量,而不是为整个 shell(或任何后续的子shells)。

shbash

这样的东西怎么样
(export temp=`pwd`; echo $temp)

这是 csh

csh -c 'setenv temp `pwd`; echo "$temp"'