gpt4 book ai didi

shell - 如何在 CSH 中取消引用变量

转载 作者:行者123 更新时间:2023-12-04 04:34:25 25 4
gpt4 key购买 nike

我有一个变量 $var ,它的值作为另一个变量 $env 。
$env 有一些值(value)。如何使用 $var 打印 $env 的值。

> set xyz = 'abc' set env = 'xyz' set v = '$' set var = "$v""$env"
>
> echo $var o/p: $xyz

现在我想使用 $var 打印 $ xyz 的值

最佳答案

使用 eval ,像这样:

set xyz='abc'
set var='xyz'
eval echo \$$var

这通常称为间接引用。

这是一个示例脚本:
set var = 'xyz'
set xyz = 'abc'
if ( $?var ) then
echo '$var is set to '"$var"
endif
if ( $?xyz ) then
echo '$xyz is set to '"$xyz"
endif
if ( `eval echo \$\?$var` ) then
echo '$$var is set to '`eval echo \$$var`
endif

输出:
> csh test
$var is set to xyz
$xyz is set to abc
$$var is set to abc

关于shell - 如何在 CSH 中取消引用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19997629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com