小编use*_*496的帖子

如何在 bash 中使用其 ID 将窗口移动到不同的工作区?

目前我已经成功使用, wmctrl -r :SELECT: -t 2 但类似的东西 wmctrl -r -i 0x03e00003 -t 2不起作用。我应该如何编写命令以选择要通过 ID 而不是鼠标移动的窗口?

我正在使用带有默认 MATE DE 的 Linux Mint 13。

我也试过 wmctrl -i -r 0x03e00003 -t 2

EDIT1: wmctrl -i -r thewinIDInHexa -t 2现在工作。它不起作用的原因是,当我第一次尝试 wmctrl 时,我使用了正确的 ID 但错误的语法,第二次我使用了正确的形式但错误的窗口 ID...问题是 ID 不是 - existent 和 wmctrl 不会为不存在的 ID 输出任何消息。感谢你付出的努力。确认我实际上使用了正确的命令形式后,促使我仔细检查 ID。再次感谢你

EDIT2:由于我无法发表评论,我将在此处发布对@slm 的回复:现在正确的 ID 是 0x0380000f

wmctrl -v -i -r 0x0380000f -t 2



envir_utf8: 1
Using window: 0x0380000f
Run Code Online (Sandbox Code Playgroud)

VLC 移至工作区 #2(第三工作区)

对于实际上不存在的 ID,我们有几乎相同的事情:

wmctrl -v -i -r 0x03a00003 …
Run Code Online (Sandbox Code Playgroud)

shell workspaces wmctrl

5
推荐指数
1
解决办法
5501
查看次数

使用 sed 提取文本无法按预期工作

我刚刚开始使用sed,我打算用它从ping输出中提取 IP 地址。这就是我正在努力实现的目标:

输入文本:

ytmti (192.188.2.3) jjggy
Run Code Online (Sandbox Code Playgroud)

所需的输出:

192.188.2.3
Run Code Online (Sandbox Code Playgroud)

我正在尝试的命令:

echo "ytmti (192.188.2.3) jjggy" | sed 's:\((\(192.188.2.3\))\):\2:' 
Run Code Online (Sandbox Code Playgroud)

电流输出:

ytmti 192.188.2.3 jjggy
Run Code Online (Sandbox Code Playgroud)

注:ytmtijjggy真正替身文字像Pinging unix.stackexchange.comwith 32 bytes of data:

我认为 usingawk可能是解析ping输出的更好解决方案,但我想习惯sed.

sed awk

4
推荐指数
1
解决办法
390
查看次数

标签 统计

awk ×1

sed ×1

shell ×1

wmctrl ×1

workspaces ×1