执行完我的 shell 脚本后,有没有办法让 Zenity 保持打开状态?

执行完我的 shell 脚本后,有没有办法让 Zenity 保持打开状态?

我已经制作了一个 zenity 列表,它会打开终端来运行 shell 脚本,但是运行完成后 zenity 就会关闭,有没有办法阻止 zenity 关闭?

这是我的脚本 -

#!/bin/bash

zret="$( zenity --list --title "Tool" --list \
    --text "Select the following "for"  " \
    --checklist --column "" --column "Name" 1 \
    "PASSWORD" 2 "BOOKS" 3 "0DIMM" 4 "1DIMM" 5 "2DIMM" --width=600 --height=400 )"

if grep -qw "PEMODE PASSWORD" <<<"${zret}"; then
    
cd /home/gem/gem_rw/userpath

grep -oP '(?<=Password: ).*' file_name.dat


$SHELL
fi

答案1

Zenity 的功能是显示一个图形对话框来请求信息。一旦关闭,它就会返回信息。所以,没有办法让 Zenity 保持打开状态,因为它不是这样工作的。

您可以重新打开 shell 脚本中的对话框(例如,将 shell 脚本设置为循环,并在 Zenity 中包含一个退出该循环的选项,或者使用 Zenity 的退出代码来确定何时退出循环)。

相关内容