【问题标题】:BASH - Creating whiptail menu from array with equal menu option and descriptionBASH - 从具有相同菜单选项和描述的数组创建鞭尾菜单
【发布时间】:2020-10-30 16:41:05
【问题描述】:

我想创建一个菜单,该菜单采用文件夹的 ls 输出并创建匹配的菜单选项和描述。

这不会出错,但也不会给我菜单。

我基本上希望在菜单中有这个: 数组0数组0 数组1 数组1 数组2数组2

#!/bin/bash

lsRes=`ls`
IFS=', ' read -r -a array <<< ${lsRes}
choices=$(whiptail --title "Sizes" \
        --menu "Choose a size:" \
        25 78 12 \
        "'${array[@]}' '${array[@]}'" \
        3>&1 1>&2 2>&3)

也试过这个:

#!/bin/bash


lsRes=`ls`
IFS=', ' read -r -a array <<< ${lsRes}
declare -a args=( --title "Sizes" --menu "Choose a size:" 25 78 12 --)
for item in "${array[@]}"; do
    args+=("${item}" "${item}")
done
choices=$(whiptail "${args[@]}")

【问题讨论】:

    标签: arrays bash whiptail


    【解决方案1】:

    你不能一步安全地做到这一点。相反,您可以一次建立一个参数。

    declare -a args=(
        --title "Sizes"
        --menu "Choose a size:" 25 78 12 --
    )
    for item in "${array[@]}"; do
        args+=("$item" "$item")
    done
    choices=$(whiptail "${args[@]}")
    

    【讨论】:

      猜你喜欢
      • 2013-05-29
      • 2014-11-09
      • 1970-01-01
      • 1970-01-01
      • 2022-12-19
      • 1970-01-01
      • 2023-03-09
      • 2017-06-13
      • 2016-08-04
      相关资源
      最近更新 更多