我有这段代码,但不知道如何在菜单中添加更多选项?我需要再添加两个选项。我该怎么做?
为此,它是否需要与我要为其创建GUI的原始bash菜单位于同一文件中?

# using zenity to create a menu
           temp=`mktemp -t temp.XXXXXX`
           temp2=`mktemp -t temp2.XXXXXX`
function diskspace {
df -k > $temp
zenity --text-info --title "Disk space" --filename=$temp
--width 750 --height 10 }
function whoseon { who > $temp
zenity --text-info --title "Logged in users" --filename=$temp --width 500 --height 10
}
function memusage {
cat /proc/meminfo > $temp
zenity --text-info --title "Memory usage" --filename=$temp
--width 300 --height 500 }
while [ 1 ]
do
zenity --list --radiolist --title "Sys Admin Menu" --column "Select" --column "Menu     Item"
FALSE "Display disk space" FALSE "Display users" FALSE "Display memory usage" FALSE   "Exit"   > $temp2
if [ $? -eq 1 ]
then
break fi
           selection=`cat $temp2`
           case $selection in
           "Display disk space")
              diskspace ;;
           "Display users")
              whoseon ;;
           "Display memory usage")
              memusage ;;
           Exit)
break ;; *)
zenity --info "Sorry, invalid selection" esac
done $

最佳答案

首先,要做的一件好事不是直接从Linux命令行和Shell脚本圣经进行复制,如果您阅读了本书中有关zenity和菜单的整个部分,您将会理解。

如果您采用脚本的这一部分

function 'function1' { 'code for doing function1'
zenity --text-info --title "Logged in users" --filename=$temp --width 500 --    height 10
}


将其插入其他类似的部分下面,这声明了该函数的调用以及它将执行的操作

然后使用这样的东西:

           "Function1*")
          function1 ;;


带有星号的功能将显示在菜单上,第二个功能是指前面的代码以了解要执行的代码。

希望这有意义

08-03 12:00
查看更多