在 whiptail 中使用动态列表

Use dynamic list in whiptail

我需要在 whiptail 中构建一个带有复选框的动态列表。 但是使用 variable\dynamic bash 输出对我没有帮助。

我试过使用这个命令

whiptail --title "Operations" --checklist "Select Operation" 22 80 14 $array

变量array的输出是

"cash3" "54311 May 25 10:10 22A763D0-8203-11E9-39BE-0007321A6EB4" OFF "cash10" "10475 May 28 18:23 22A763D0-8203-11E9-82FE-0007321A6EB4" OFF "cash14" "9905 May 27 15:55 22A763D0-8203-11E9-86FD-0007321A6EB4" OFF "cash13" "11780 May 29 09:32 22A763D0-8203-11E9-66AD-0007321A6EB4" OFF

什么完全对应命令的 whiptail 语法,但不执行此命令。

当使用相同的数据,但不是通过变量 whiptail 工作时

您仅将第一个元素与 $array 一起使用。您可以使用 ${array[@]} 的整个数组。

这将起作用:

#! /bin/bash

array=("cash3" "54311 May 25 10:10 22A763D0-8203-11E9-39BE-0007321A6EB4" OFF "cash10" "10475 May 28 18:23 22A763D0-8203-11E9-82FE-0007321A6EB4" OFF "cash14" "9905 May 27 15:55 22A763D0-8203-11E9-86FD-0007321A6EB4" OFF "cash13" "11780 May 29 09:32 22A763D0-8203-11E9-66AD-0007321A6EB4" OFF)

whiptail --title "Operations" --checklist "Select Operation" 22 80 14 "${array[@]}"

请注意,如果不引用数组 ("),whiptail 将无法正常工作。