Linux变量/数组分配中的Bash脚本

时间:2018-10-29 16:48:04

标签: linux bash scripting

我正试图使我的shell脚本类似于在快餐店点菜。 但是,对于如何设置数组来确定客户希望订购的饮料的大小,我感到困惑。我的尺寸如下:

small=12oz
medium=16oz
large=20oz
xlarge =24oz

我已经编写了shell脚本,以读取$ size的客户输入,但是当客户声明其大小时,我不知道如何将“ small”一词转换为盎司量。我将使用eval“ $ size =“`选项,但是我要输入什么以使其可以变化呢?x是否足够?

谢谢!

1 个答案:

答案 0 :(得分:4)

尝试关联查找。

$: declare -A drink=(
    [small]=12oz
    [medium]=16oz
    [large]=20oz
   )
$: choice=medium
$: echo "${drink[$choice]}"
16oz
$: drink[xlg]=32oz
$: choice=xlg
$: echo "${drink[$choice]}"
32oz

但是,请注意语法,这有点痛苦。