在Shell脚本中使用数组变量初始化变量

阿卡什·库什瓦哈(Aakash kushwaha)

我正在尝试使用数组变量连接字符串,但出现错误。

declare -a arr
arr=(one two three)
var= "${arr[0]}    ${arr[1]}"
echo $var

预期产量

one    two

(一到两个之间有4个空格)

我收到以下错误:

[wasadmin@gblabvl31 IBM]$ ./test.sh
./test.sh: line 10: one     two: command not found

这是否意味着我们不能为变量分配数组元素(用作变量)?还有什么其他方法可以做到这一点

重做

您必须在以下位置删除空格=

var="${arr[0]}    ${arr[1]}"

Bash支持一种语法,该语法允许您在调用命令时临时设置变量。语法就是这样VARNAME=somevalue command这将执行该命令,将具有(环境)变量设置VARNAMEsomevalue如果您说的VARNAME= command话,bash会将其解释为VARNAME="" commandie ,即将变量设置为空字符串。在您的情况下,这会导致bash"${arr[0]} ${arr[1]}"像命令一样尝试执行部件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

数组初始化在C ++中使用const变量

来自分类Dev

在相同变量的初始化中使用变量

来自分类Dev

如何初始化变量以在以后的PHP中使用它?

来自分类Dev

在C ++中使用全局变量初始化

来自分类Dev

无法使用数组变量初始化字典

来自分类Dev

使用const变量进行数组初始化

来自分类Dev

如何初始化数组变量

来自分类Dev

在C99中使用静态变量初始化静态变量

来自分类Dev

无法使用beforeValidate初始化变量

来自分类Dev

使用AT FIRST初始化循环变量

来自分类Dev

初始化之前使用的变量

来自分类Dev

使用ntohl()初始化const变量

来自分类Dev

在初始化之前使用变量。JS

来自分类Dev

C ++使用Lambda初始化变量

来自分类Dev

使用未初始化的变量

来自分类Dev

在初始化之前使用的Swift变量

来自分类Dev

使用未初始化的变量警告

来自分类Dev

在systemverilog中使用初始块与初始化reg变量有什么区别?

来自分类Dev

如何在Rust中使用非常量初始化器初始化不可变的全局变量?

来自分类Dev

初始化脚本和系统的系统范围变量?

来自分类Dev

使用x ++在init方法中使用select初始化变量

来自分类Dev

在Shell脚本中使用变量名

来自分类Dev

在Shell脚本中使用变量名

来自分类Dev

在Unix Shell脚本中使用带点的变量

来自分类Dev

在awk脚本中使用if和shell变量

来自分类Dev

从LocalStorage初始化变量

来自分类Dev

初始化变量列表

来自分类Dev

与变量初始化混淆

来自分类Dev

结构变量初始化