关于重启 Plasma 5 有很多问题和答案。我意识到使用 KRunner 是最好的选择,但今天我无法访问 KRunner,不得不使用终端。
在阅读了 nohup、disown 和 & 之间的区别之后,我觉得这两个主题(重新启动 Plasma 5 和 nohub/disown/background 作业)需要组合成一个特定于以正确方式重新启动 KDE Plasma 5 的答案。我看到的关于重启 Plasma 5 的几乎所有答案都忽略了nohup
.
通过遵循有关重新启动 Plasma 5 的不同答案,我在不同时间发现自己无法关闭终端窗口而不杀死我新启动的 Plasma 5 会话。
以下脚本来自几个答案,主要是https://unix.stackexchange.com/a/499373,并被修改为包含nohup
. 这是最终的、全面的解决方案吗?还是需要避免的混乱?
#!/bin/sh
kbuildsycoca5 # rebuilds the plasmashell database
timeout 5 kquitapp5 plasmashell #without timeout, it can hang for ~30-60 seconds
pgrep -U $USER -x plasmashell &>/dev/null && pkill -U $USER -x plasmashell
pgrep -U $USER -x plasmashell &>/dev/null && pkill -U $USER -x -9 plasmashell # here the process does not get to clean-up.
killall -9 plasmashell #sends a signal to all processes running any of the specified commands
pgrep -U $USER -x plasmashell &>/dev/null && echo "ERROR: cannot kill plasmashell"
nohup plasmashell &
我的具体问题是关于最后一行:
nohup plasmashell &
在这种情况下是否正确?
如评论中那样重新启动 kde 应用程序是错误的方法。
我有一个脚本,如果我想重新启动诸如等离子外壳之类的东西,我会调用它...