Zenity 文件选择显示
Zenity file selection displaying
所以我正在尝试在 zenity 中执行删除功能。我设法让用户输入他想要的路径,然后我想显示其中存在的所有文件。我找到了如何去做,我知道它有效,但没有 zenity 。下一个 window(文件选择)没有弹出,我的程序返回到菜单。感谢我 code.Thanks 你的帮助和时间!
#!/bin/bash
function Ddate()
{
zenity --info \
--title "Date and Time" \
--text "Today is $(date)"
}
function Dcalendar()
{
zenity --forms \
--title "Scheduler" \
--text "Pick a date" \
--add-calendar "Calendar" \
--add-entry "Reminder"
}
function Ddelete()
{
directory=$(zenity --entry \
--text "Enter a path" \
--title "Delete" )
if [ -z "$directory" ];then
directory=$ pwd
else
if [ -d "$directory" ];then
zenity --file-selection --filename=$(directory)
fi
fi
}
while true;
do
choice="$(zenity --height 275 --width 450 \
--list \
--title="" \
--column="Function" --column="Description" \
Date 'Display the actual date and time.' \
Calendar 'Display an interactive calendar.' \
Delete 'Let you delete a file.' \
Exit 'To quit this script.')"
case $choice in
Date) Ddate;;
Calendar) Dcalendar;;
Delete) Ddelete;;
Exit) break;;
esac
done
为了解决我的问题,我明白 $?转义码。在每个 window $?控制 ok 和 cancel 按钮分别取值 0 和 1。
在我的程序中,我清除了 $?首先因为前面的 window ,可以已经设置了一个值,设置一个变量 ret 为 $?意思是如果有人按确定或取消它继续下一个 window 或返回到根 window.
function Ddelete()
{
directory=$(zenity --entry \
--text "Enter a path" \
--title "Delete" )
if [ -z "$directory" ];then
directory=$ pwd
else
if [ -d "$directory" ];then
clear $?
Spath=$(zenity --file-selection --filename=$(directory))
ret=$?
fi
fi
}
所以我正在尝试在 zenity 中执行删除功能。我设法让用户输入他想要的路径,然后我想显示其中存在的所有文件。我找到了如何去做,我知道它有效,但没有 zenity 。下一个 window(文件选择)没有弹出,我的程序返回到菜单。感谢我 code.Thanks 你的帮助和时间!
#!/bin/bash
function Ddate()
{
zenity --info \
--title "Date and Time" \
--text "Today is $(date)"
}
function Dcalendar()
{
zenity --forms \
--title "Scheduler" \
--text "Pick a date" \
--add-calendar "Calendar" \
--add-entry "Reminder"
}
function Ddelete()
{
directory=$(zenity --entry \
--text "Enter a path" \
--title "Delete" )
if [ -z "$directory" ];then
directory=$ pwd
else
if [ -d "$directory" ];then
zenity --file-selection --filename=$(directory)
fi
fi
}
while true;
do
choice="$(zenity --height 275 --width 450 \
--list \
--title="" \
--column="Function" --column="Description" \
Date 'Display the actual date and time.' \
Calendar 'Display an interactive calendar.' \
Delete 'Let you delete a file.' \
Exit 'To quit this script.')"
case $choice in
Date) Ddate;;
Calendar) Dcalendar;;
Delete) Ddelete;;
Exit) break;;
esac
done
为了解决我的问题,我明白 $?转义码。在每个 window $?控制 ok 和 cancel 按钮分别取值 0 和 1。 在我的程序中,我清除了 $?首先因为前面的 window ,可以已经设置了一个值,设置一个变量 ret 为 $?意思是如果有人按确定或取消它继续下一个 window 或返回到根 window.
function Ddelete()
{
directory=$(zenity --entry \
--text "Enter a path" \
--title "Delete" )
if [ -z "$directory" ];then
directory=$ pwd
else
if [ -d "$directory" ];then
clear $?
Spath=$(zenity --file-selection --filename=$(directory))
ret=$?
fi
fi
}