gpt4 book ai didi

linux - Zenity - 选择器菜单示例

转载 作者:太空宇宙 更新时间:2023-11-04 03:59:28 25 4
gpt4 key购买 nike

我正在尝试在 Linux 下使用 Zenity 制作一个简单的菜单

我尝试使用 2 个代码,但根本不起作用

第一:

#!/bin/bash
Titulo="Ejemplo De Seleccion"
Pregunta="Selecciona una opcion:"
Opciones=("A" "B" "C")

echo "$Titulo"
PS3="$Pregunta "

while opt="$(zenity --title="$Titulo" --text="$Pregunta" --list --column="Opciones" "${Opciones[@] $Versiones}")"; do

case $opt in
"${Opciones[0]}" )
echo "Has elegido $opt, Opcion 1"
zenity --info --text="Has elegido $opt, Opcion 1"
;;
"${Opciones[1]}")
echo "Has elegido $opt, Opcion 2"
zenity --info --text="Has elegido $opt, Opcion 2"
;;

"${Opciones[2]}")
echo "Has elegido $opt, Opcion 3"
zenity --info --text="Has elegido $opt, Opcion 3"
;;

"${Opciones[-1]}")
zenity --error --text="Opcion Incorrecta , Intenta con otra."
;;
esac

done

我可以选择“A、B、C”,但这不会向我显示“zenity --info --text="Something”

第二,这更实用,但遗漏了一些东西

#!/bin/bash

Titulo="Instalador Manual de Wine"
Pregunta="Por Favor Elige una Opcion :"

Versiones=(
"1.6.2"
"1.7.0"
"1.7.1"
"1.7.2"
"1.7.3"
"1.7.4"
"1.7.5"
"1.7.6"
"1.7.7"
"1.7.8"
"1.7.9"
"1.7.10"
"1.7.11"
"1.7.12"
"1.7.13"
"1.7.14"
"1.7.15"
"1.7.16"
"1.7.17"
"1.7.18"
"Salir"
)



while true; do
Opcion="$(zenity --width 309 --height 240 --title="$Titulo" --text="$Pregunta" --list --radiolist --column "Opcion Nª" --column="Versiones de Wine" "${Versiones[@]}" "Salir")"

if [ "$Opcion" = "1.6.2" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 01"
elif [ "$Opcion" = "1.7.0" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 02"
elif [ "$Opcion" = "1.7.1" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 03"
elif [ "$Opcion" = "1.7.2" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 04"
elif [ "$Opcion" = "1.7.3" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 05"
elif [ "$Opcion" = "1.7.4" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 06"
elif [ "$Opcion" = "1.7.5" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 07"
elif [ "$Opcion" = "1.7.6" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 08"
elif [ "$Opcion" = "1.7.7" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 09"
elif [ "$Opcion" = "1.7.8" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 10"
elif [ "$Opcion" = "1.7.9" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 11"
elif [ "$Opcion" = "1.7.10" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 12"
elif [ "$Opcion" = "1.7.11" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 13"
elif [ "$Opcion" = "1.7.12" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 14"
elif [ "$Opcion" = "1.7.13" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 15"
elif [ "$Opcion" = "1.7.14" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 16"
elif [ "$Opcion" = "1.7.15" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 17"
elif [ "$Opcion" = "1.7.16" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 18"
elif [ "$Opcion" = "1.7.17" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 19"
elif [ "$Opcion" = "1.7.18" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 20"
elif [ "$Opcion" = "Salir" ]; then
exit 1
else
zenity --info --text="Has Elegido $Opcion, Opcion Invalida"
fi
done

好吧,我可以选择,这给了我答案,但是列表变量“Versiones”内的以下值没有显示在 Zenity 中:

1.6.2 1.7.1 1.7.3 1.7.5 1.7.7 1.7.9 1.7.11 1.7.13 1.7.15 1.7.17

我认为线路有问题

Opcion="$(zenity --width 309 --height 240 --title="$Titulo"--text="$Pregunta"--list --radiolist --column "Opcion Nª"--column="Versiones de Wine""${Versiones[@]}""Salir")"

有什么问题吗?我想显示变量“Versiones”中的所有值,我不明白“${Versiones[@]}”的工作原理。我从另一个脚本复制 XD。

最佳答案

使用以下几行修复它

感谢 Facebook 用户:nicolas.carlos.106 修复了代码

#!/bin/bash

Titulo="Instalador Manual de Wine"
Pregunta="Por Favor Elige una Opcion :"

Versiones=(
"1.6.2"
"1.7.0"
"1.7.1"
"1.7.2"
"1.7.3"
"1.7.4"
"1.7.5"
"1.7.6"
"1.7.7"
"1.7.8"
"1.7.9"
"1.7.10"
"1.7.11"
"1.7.12"
"1.7.13"
"1.7.14"
"1.7.15"
"1.7.16"
"1.7.17"
"1.7.18"
"Salir"
)
Versiones=( ${Versiones[@]/#/"FALSE "} )


while true; do
Opcion="$(zenity --width 309 --height 240 --title="$Titulo" --text="$Pregunta" --list --radiolist --column "Opcion Nª" --column="Versiones de Wine" "${Versiones[@]}")"

if [ "$Opcion" = "1.6.2" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 01"
elif [ "$Opcion" = "1.7.0" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 02"
elif [ "$Opcion" = "1.7.1" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 03"
elif [ "$Opcion" = "1.7.2" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 04"
elif [ "$Opcion" = "1.7.3" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 05"
elif [ "$Opcion" = "1.7.4" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 06"
elif [ "$Opcion" = "1.7.5" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 07"
elif [ "$Opcion" = "1.7.6" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 08"
elif [ "$Opcion" = "1.7.7" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 09"
elif [ "$Opcion" = "1.7.8" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 10"
elif [ "$Opcion" = "1.7.9" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 11"
elif [ "$Opcion" = "1.7.10" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 12"
elif [ "$Opcion" = "1.7.11" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 13"
elif [ "$Opcion" = "1.7.12" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 14"
elif [ "$Opcion" = "1.7.13" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 15"
elif [ "$Opcion" = "1.7.14" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 16"
elif [ "$Opcion" = "1.7.15" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 17"
elif [ "$Opcion" = "1.7.16" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 18"
elif [ "$Opcion" = "1.7.17" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 19"
elif [ "$Opcion" = "1.7.18" ]; then
zenity --info --text="Has Elegido $Opcion, Opcion 20"
elif [ "$Opcion" = "Salir" ]; then
exit 1
else
zenity --info --text="Has Elegido $Opcion, Opcion Invalida"
fi
done

关于linux - Zenity - 选择器菜单示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23463083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com