我正在尝试自动安装 Gnome Tweaks 扩展(仪表板),最后,它要求我通过Alt+ F2+ r+重新启动 Gnome Shell Return(我认为 Gnome Tweaks 也需要这样做)。我该如何通过 bash 脚本来做到这一点?
我已经通过一个名为的库尝试过它,但由于某种原因,xdotool
它无法识别最后的Return
(或=数字键盘返回)。KP_Enter
xdotool key Alt+F2+r+Return
# `xdotool key "Alt+F2+r" && xdotool key "Return"` won't work either
我也尝试过类似的命令gnome-shell --replace
,killall gnome-shell
但它们要么杀死 gnome shell,要么给我返回一堆令人讨厌的信息警告终端上的消息告诉我某些内容可能已被覆盖。如果我之后在终端上尝试Ctrl+ C,那么 Gnome Shell 这次就彻底消失了,我必须重置我的 PC。
正确的做法是什么?
警告信息:
$ gnome-shell -r
current session already has an ibus-daemon.
GNOME Shell-Message: 15:53:28.012: Telepathy is not available, chat integration will be disabled.
Gjs-Message: 15:53:28.122: JS WARNING: [/usr/share/gnome-shell/extensions/[email protected]/appIcons.js 1028]: unreachable code after return statement
(gnome-shell:4088): Gjs-CRITICAL **: 15:53:28.145: Object .Gjs_DashToPanel-PreviewMenu (0x559054ff2650), has been already finalized. Impossible to set any property to it.
== Stack trace for context 0x5590534d94c0 ==
#0 0x7ffe2cb772c0 I resource:///org/gnome/gjs/modules/_legacy.js:83 (0x7f1b084b5de0 @ 87)
#1 0x5590538aecd8 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/taskbar.js:366 (0x7f1ae4fd0560 @ 93)
#2 0x7ffe2cb77ea0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f1b084b5de0 @ 71)
#3 0x5590538aec38 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/panel.js:293 (0x7f1ae4fcb450 @ 410)
#4 0x7ffe2cb78a80 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f1b084b5de0 @ 71)
#5 0x5590538aebb8 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/panelManager.js:212 (0x7f1ae4fa8de0 @ 69)
#6 0x7ffe2cb79780 b self-hosted:251 (0x7f1b084c4ab0 @ 223)
#7 0x5590538aeb28 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/panelManager.js:199 (0x7f1ae4fa8d58 @ 72)
#8 0x7ffe2cb7a550 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f1b084b5de0 @ 71)
#9 0x5590538aea68 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/extension.js:109 (0x7f1ae4fa82b8 @ 12)
#10 0x5590538ae9b0 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/extension.js:79 (0x7f1ae4fa81a8 @ 267)
#11 0x5590538ae938 i /home/philippe/.local/share/gnome-shell/extensions/[email protected]/extension.js:55 (0x7f1ae4fa8120 @ 48)
#12 0x7ffe2cb7b860 b resource:///org/gnome/gjs/modules/signals.js:128 (0x7f1b084d2230 @ 386)
#13 0x5590538ae888 i resource:///org/gnome/shell/ui/extensionSystem.js:137 (0x7f1b08259340 @ 554)
#14 0x5590538ae7f0 i resource:///org/gnome/shell/ui/extensionSystem.js:181 (0x7f1b08259450 @ 241)
#15 0x5590538ae770 i resource:///org/gnome/shell/ui/extensionSystem.js:328 (0x7f1b08259b38 @ 13)
#16 0x7ffe2cb7cbf0 b resource:///org/gnome/gjs/modules/signals.js:128 (0x7f1b084d2230 @ 386)
#17 0x5590538ae690 i resource:///org/gnome/shell/misc/extensionUtils.js:191 (0x7f1b0825e2b8 @ 459)
#18 0x7ffe2cb7d860 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f1b084b5de0 @ 71)
#19 0x5590538ae600 i resource:///org/gnome/shell/misc/extensionUtils.js:197 (0x7f1b0825e3c8 @ 28)
#20 0x7ffe2cb7e560 b resource:///org/gnome/shell/misc/fileUtils.js:27 (0x7f1b0825e4d8 @ 323)
#21 0x5590538ae570 i resource:///org/gnome/shell/misc/extensionUtils.js:196 (0x7f1b0825e340 @ 72)
#22 0x7ffe2cb7f1c0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f1b084b5de0 @ 71)
#23 0x5590538ae4e0 i resource:///org/gnome/shell/ui/extensionSystem.js:330 (0x7f1b08259ab0 @ 201)
#24 0x5590538ae460 i resource:///org/gnome/shell/ui/extensionSystem.js:338 (0x7f1b08259bc0 @ 36)
#25 0x5590538ae3e0 i resource:///org/gnome/shell/ui/extensionSystem.js:369 (0x7f1b08259de0 @ 67)
#26 0x5590538ae358 i resource:///org/gnome/shell/ui/extensionSystem.js:377 (0x7f1b08259e68 @ 41)
#27 0x5590538ae2c8 i resource:///org/gnome/shell/ui/main.js:229 (0x7f1b084da340 @ 1152)
#28 0x5590538ae240 i resource:///org/gnome/shell/ui/main.js:133 (0x7f1b084da230 @ 237)
#29 0x5590538ae1c8 i <main>:1 (0x7f1b08486b38 @ 48)
(gnome-shell:4088): Gjs-WARNING **: 15:53:28.384: Some code accessed the property 'getUniqueBusNameSync' on the module 'util'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway.
Ubuntu AppIndicators-Message: 15:53:28.385: [AppIndicatorSupport-DEBUG] Registering StatusNotifierItem :1.93/StatusNotifierItem
Ubuntu AppIndicators-Message: 15:53:28.388: [AppIndicatorSupport-DEBUG] Registering StatusNotifierItem :1.89/org/ayatana/NotificationItem/software_update_available
Ubuntu AppIndicators-Message: 15:53:28.391: [AppIndicatorSupport-DEBUG] Registering StatusNotifierItem :1.89/org/ayatana/NotificationItem/livepatch
GNOME Shell-Message: 15:53:28.453: Error looking up permission: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.impl.portal.PermissionStore was not provided by any .service files
(gnome-shell:4088): Gjs-WARNING **: 15:53:35.464: Some code accessed the property 'refreshPropertyOnProxy' on the module 'util'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway.
答案1
在发送返回之前插入一些延迟:
xdotool key "Alt+F2+r" && sleep 0.5 && xdotool key "Return"
答案2
对我来说最有效的方法是调用Cinnamon 源代码。适用于 5.4.10。也不会提示回退模式。
dbus-send --type=method_call --dest=org.Cinnamon /org/Cinnamon org.Cinnamon.Eval string:"global.real_restart()"