在Unix中为参数值赋值

时间:2018-02-07 11:18:27

标签: bash shell variables unix parameters

考虑shell中的以下变量:

$ a=b  
$ c=d

现在我需要在 b (a的值)中存储 d (c的值)。

$ $a=$c

抛出错误:-sh: b=d: command not found

我将如何实现这一目标?

2 个答案:

答案 0 :(得分:0)

使用declare

$ a=b  
$ c=d
$ declare $a=$c
$ echo $b
d

答案 1 :(得分:0)

您可以使用printf填充变量。当您不知道$c的内容时,使用%s是避免使用特殊字符的安全方法。

printf -v $a "%s" "$c"