0

我需要在whiptail 中建立一个带有复选框的动态列表。但是使用变量\动态 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 作品

4

1 回答 1

1

您只能将第一个元素与$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 将无法正常工作。

于 2019-05-30T06:40:50.463 回答