在 KDE 上双击 .sh 文件无法运行脚本

在 KDE 上双击 .sh 文件无法运行脚本

我的桌面上有一个简单的 .sh 脚本,可以解决第二个显示器的一个小问题。如果我打开 Konsole,然后输入 ./script.sh,它会完美运行。但如果我双击该 .sh 文件 - 它无法运行,或者如果我修改它,它只能运行该脚本的一半。如何让它在双击时完全运行?

以下是来源:

#!/bin/bash
kscreen-doctor output.DP-3.position.0,0 output.DP-2.position.1920,-10
kscreen-doctor output.DP-3.disable
kquitapp5 plasmashell
kstart5 plasmashell

答案1

如果你从 的子进程生成的 shell 启动了此脚本plasmashell,则该脚本将在第 4 行终止:

kquitapp5 plasmashell

例子:

生成的 Shell 的屏幕截图

据我所知,您可能没有其他选择,只能将其作为服务启动。如果您使用的systemd系统单位允许您指定After=指令,使用该指令指示在 UI 初始化后启动脚本。

例子:

[Unit]
Description=Run my script after UI is initialized
After=graphical.target
Before=
DefaultDependencies=no

[Service]
ExecStart=/path/to/your/script.sh
RemainAfterExit=no

相关内容