Fra*_*cia 8 command-line window xte
你知道怎么做吗?我知道如何通过键盘 (Alt+F4) 执行此操作,我知道如何使用鼠标执行此操作(单击该 X),并且我还知道kill X应该终止 id Xkillall Y的进程(并且应该终止名为是)。但我想知道如何从终端杀死活动窗口。
因此,根据我上面所说的,一个有效的答案也是获取活动窗口的 id。
现在我正在从xte实现这个功能(模拟 Alt+F4),但我想知道是否有一种方法不意味着安装另一个应用程序。谢谢你们。
编辑。这是完整的脚本。首先启用“按下 Ctrl 时显示鼠标”,然后将此脚本添加到 CompizConfig 中的命令并绑定到右上角。当您触摸右上角时,会显示鼠标周围的小通知。如果您什么都不做,活动窗口将在 1 秒后关闭。但是,如果您在第二秒内再次触摸角,活动窗口将不会关闭。
xte 'key Control_R'; if [ -f ~/.fcont ]; then rm -f -r ~/.fcont; else touch ~/.fcont; sleep 1; if [ -f ~/.fcont ]; then xkill -id `xprop -root _NET_ACTIVE_WINDOW | cut -d\# -f2`; rm -f -r ~/.fcont; fi fi
Run Code Online (Sandbox Code Playgroud)
请注意,我仍然使用之前命名的 xte 应用程序,因为我前段时间提出的这个问题从未得到解答。
如果您想变得非常麻烦并避免默认情况下未安装的应用程序:
xkill -id `xprop -root _NET_ACTIVE_WINDOW | cut -d\# -f2`
Run Code Online (Sandbox Code Playgroud)
同样,这似乎工作得很好。
注意:对于某些应用程序(请参阅注释),这可能意味着应用程序的所有窗口都已关闭。gnome-terminal就是这样的一个应用程序,但terminator并xterm不会受到影响。我建议这更像是这些应用程序的错误(可能是设计的),而不是我的命令的错误。
wmctrl下面的命令还使用 EWMH 规范关闭当前活动的窗口,尽管它确实需要安装另一个程序,而您似乎更愿意避免安装另一个程序。
结果,它具有预期的行为:
wmctrl -c :活动:
来自项目主页wmctrl - 与 EWMH/NetWM 兼容的 X Window Manager 交互的命令行工具。
-c 优雅地关闭窗口。
和
特殊字符串“:ACTIVE:”(不带引号)可用于指示 wmctrl 使用当前活动窗口来执行操作。
| 归档时间: |
|
| 查看次数: |
23275 次 |
| 最近记录: |