Answers:
旧线程,但是是的,现在有!签出systemd-manager
系统管理员
该应用程序是一个用Rust编程语言编写的系统服务管理器,其中GTK3作为选择的图形用户界面。这些单元被过滤到三个单独的列表中:服务,套接字和计时器。在左窗格中选择一个单元后,将使用与该单元有关的信息来更新右窗格,并在右标题栏中更新以反映该单元的状态,您可以在其中禁用/启用和启动/停止所选单元。服务是立即激活的单元,套接字是需要时激活的单元,计时器是每隔一定时间激活的单元。除显示单位外,该应用程序还提供在Systemd Analyze视图上由systemd-analyze生成的统计信息。
从前我自己写了一个zenity-GUI。简而言之:它会在init.d中查找文件,抓住case语句,然后尝试猜测应该动态显示的内容。
也许它不适用于所有服务,但对于我的工作(杯子,postgresql等)就足够了。
附带说明一下,它显示了如何使窗口动态适应屏幕尺寸(最大)和内容尺寸(宽度,长度)。
这里是:
#!/bin/bash
#
# oetv.sh
# Show all servives in /etc/init.d in a list, and let the user choose how to start it.
#
# (c) 2008 Stefan Wagner, license GPLv3
#
# Search /etc/init.d/ for all executable files
# Get their number, and the maximum name size to produce a fitting window
width=0
height=0
# The font will influence the optimal window size
# But I don't know how to get them.
# Probably depending on windowmanager, desktop, usersettings
function xyFromList
{
anz=0
wmax=0
for file in $1
do
anz=$((anz+1))
len=${#file}
[ $len -gt $wmax ] && wmax=$len
done;
width=$((wmax*9+50))
height=$((anz*26+160))
}
dienstlist=$(ls /etc/init.d/ )
xyFromList "$dienstlist"
dienst=$(zenity --width=$width --height=$height --list --text "Service schalten" --column "Dienst" $dienstlist)
[ "foo"$dienst == "foo" ] && exit
# select options for the service, and display an apropriate window
optionen=$(egrep -h "[a-z]+\)" /etc/init.d/$dienst | sed 's/^[ \t]*//;s/).*/)/;s/#.*//;s/)//g;s/|/ /g' | sort -u)
xyFromList "$optionen"
aktion=$(zenity --width=$width --height=$height --list --text "Service schalten" --column "Befehl" $optionen)
[ "foo"$aktion == "foo" ] && exit
result=$(gksudo /etc/init.d/$dienst $aktion)
zenity --info "$aktion" --text "$result"
在我的网站上,我有屏幕截图和德语注释http://home.arcor.de/hirnstrom/minis/index.html#oetv.sh