我有这段代码,但不知道如何在菜单中添加更多选项?我需要再添加两个选项。我该怎么做?
为此,它是否需要与我要为其创建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 ;;
带有星号的功能将显示在菜单上,第二个功能是指前面的代码以了解要执行的代码。
希望这有意义