3

bash 脚本中的原始类型是什么?我觉得这是一个简单的问题,但很难找到答案。我知道至少有数组,因为您可以执行诸如

for file in *.less
  # code working with file

这样就使它看起来像 *.less 是一个数组。

此外,还有字符串类型,因为如果我有

a=y
b=z
c=$a+$b
echo $c
>> y+z

除了这个还有其他类型吗?非常感谢!

编辑:经过进一步研究,似乎还有关联数组,可以通过以下方式声明

declare -A address

我从这里得到的。有没有其他类型的例子?

4

1 回答 1

5

这是一个有趣的问题,这是我发现的:

bash 支持大多数编程语言共享的几种编程原语。它可以执行选择(if then else, case),它可以循环(for,while,until)并且它有函数(function)。 http://dasher.wustl.edu/chem478/software/unix-tools/bash.html

Bash 变量是无类型的。

与许多其他编程语言不同,Bash 不按“类型”来隔离其变量。本质上,Bash 变量是字符串,但根据上下文,Bash 允许对变量进行算术运算和比较。决定因素是变量的值是否仅包含数字。 http://tldp.org/LDP/abs/html/untyped.html

Bash 提供一维索引和关联数组变量。 http://www.gnu.org/software/bash/manual/html_node/Arrays.html#Arrays

于 2013-08-29T21:19:13.427 回答