标签: gnu-screen

Gnu 屏幕:在附加时执行命令

有没有办法让 GNU Screen 在它被附加时检测它并在它被附加时执行我拥有的 shell 脚本?这样做的原因是我想保持 X11 转发的显示变量正确,但我需要检测屏幕何时重新连接到另一台计算机以触发我的脚本。

谢谢。

shell-script gnu-screen

7
推荐指数
1
解决办法
2237
查看次数

为什么屏幕没有显示当前正在运行的进程名称?(Mac OSX 终端 bash)

我在 Mac OSX 终端应用程序 (bash) 中运行屏幕。

这是 screenrc (从这里得到的):

$ cat ~/.screenrc 
termcapinfo xterm* ti@:te@
startup_message off
defutf8 on
shelltitle "$ |what?" # make screen assign window titles automatically
hardstatus alwayslastline
hardstatus string '%{= kw} [ %{= kb}%H%{= kw} ][%= %{= kw}%?%-Lw?%{= kW}%n*%f %t%?%?%{= kw}%?%+Lw%?%?%= ][ %{r}%l%{w} ]%{w}[%{r} %m/%d/%y/ %C %A %{w}]%{w}'
$
Run Code Online (Sandbox Code Playgroud)

可以看出,我确实有一行将当前进程名称显示为屏幕中的标题:

shelltitle "$ |what?" # make screen assign window titles automatically
Run Code Online (Sandbox Code Playgroud)

但在屏幕内我只看到“什么?” (默认)而不是进程名称。这表明“$”不起作用。

我错过了什么?“$ |something-else”是如何工作的?

terminal bash gnu-screen macos

7
推荐指数
1
解决办法
2263
查看次数

是否有类似 screen 的应用程序,但用于 GUI 应用程序?

我目前正在运行几个项目,我想在不关闭和重新打开所有应用程序的情况下在它们之间切换。有没有办法用一些类似屏幕的应用程序来做到这一点?到目前为止,唯一的方法是切换登录用户,但我想避免这种情况。我们可以假设 linux 机器,没有内存限制。

linux gnu-screen

7
推荐指数
1
解决办法
5270
查看次数

在 OS X 上使用带有垂直分割窗口的 GNU Screen 进行复制粘贴

当在 OS X 中使用 GNU Screen(可能也与 Linux 一起使用)并使用垂直分屏时,您如何仅在完整终端的一侧复制粘贴文本?

是不是不能做人们所接受的事情,或者是否有一个脚本/函数可以粘贴每行的第一个或最后一个 80 个字符或类似的东西?

(如果重要的话,我从 git 存储库为我的 OS X 10.7 安装了最新的 GNU Screen...)

gnu-screen macos

7
推荐指数
1
解决办法
2973
查看次数

tmux 中的原生 xterm 鼠标滚动

我决定尝试 tmux 作为 GNU 屏幕替代品,想知道是否有一种方法可以像 xterm 一样使用鼠标滚动?

可以通过在 tmux 中使用Shift+启用原生 xterm 滚动PageUp

set -g terminal-overrides 'xterm*:smcup@:rmcup@'
Run Code Online (Sandbox Code Playgroud)

但这对鼠标不起作用。我有选择

setw -g mouse-mode on
Run Code Online (Sandbox Code Playgroud)

在我的 tmux.conf 中,但这会导致 tmux 复制模式。和

setw -g mouse-mode off
Run Code Online (Sandbox Code Playgroud)

鼠标滚动根本不起作用。

是否可以在 tmux 中启用本机 xterm 鼠标滚动?

xterm gnu-screen tmux

7
推荐指数
1
解决办法
1101
查看次数

如何防止gnu屏幕捕获鼠标?

我想在终端上使用本地回滚,同时使用 gnu 屏幕。那是因为我的网络连接速度非常慢,所以使用屏幕的回滚非常慢。本地回滚要好得多。

这有效,在我的 .screenrc 中使用“termcapinfo xterm* ti@:te@”。

但是,鼠标映射到屏幕的“向上”/“向下”光标键,而不是映射到我的本地终端滚动。为什么?当 screen 不在远程 ssh 会话中运行时,使用鼠标滚动就可以了。但似乎 gnu screen 以某种方式告诉我的本地终端只向它发送鼠标滚轮命令,而忽略它们本身?

linux ssh remote gnu-screen

7
推荐指数
1
解决办法
582
查看次数

如何从 byobu 的屏幕缓冲区粘贴(ubuntu 12.04 64bit)

我在 gnome-terminal 中运行 byobu,在 ubuntu 12.04 64 位下。并尝试复制屏幕缓冲区。

即按 F7,byobu 进入“复制模式”,然后按空格键标记屏幕文本。

问题是,如何在将这些文本复制到屏幕缓冲区后粘贴这些文本?

gnu-screen byobu

7
推荐指数
1
解决办法
3786
查看次数

如何让 vim 将文本复制到 GNU 屏幕的剪贴板缓冲区?

我想用 vim 的命令拉取文本,并将其放在屏幕的剪贴板中,稍后可以通过 ^A] 将其粘贴到不同的应用程序中。vim 需要进行复制(不是屏幕的复制模式),因为我有更多的文本,一次无法在屏幕上显示。

其他问题的答案已经解决了这个问题,但它们主要依赖于使用 vim 的接口 + 和 * 到 X 剪贴板,这不适用于远程启动的应用程序或不存在 X 会话的情况下开始。我正在通过 PuTTY 工作,但这是偶然的,因为我只想在屏幕之间转移而不是 [必须] 到本地。

最好的事情是在 vim 中存在一个连接到屏幕的魔法缓冲区,但我会听取解决方法:)

clipboard vim gnu-screen

7
推荐指数
1
解决办法
1469
查看次数

GNU 屏幕更改 vim 语法突出显示颜色

我正在尝试在 GNU 屏幕会话中使用 vim,但是每当我在屏幕内打开 vim 时,与在 GNU 屏幕外打开 vim 时相比,语法突出显示使用的颜色完全不同。

为什么 vim 在屏幕内打开它时会更改其语法突出显示颜色以及如何修复它?

注意:我在 iTerm2 (OS X) 中使用 spf13-vim。

编辑:这两个图像显示了在普通 bash 中使用 vim 和在屏幕内使用 vim 时的区别:

  • 普通的: 普通vim

  • 内屏: 屏幕内的vim

vim colors gnu-screen iterm2 macos

7
推荐指数
2
解决办法
3605
查看次数

Systemd 服务 - 启动时屏幕内的 Python 脚本

我目前正在通过 rc.local 中的此脚本在 Screen 会话中运行 python 脚本:

screen -L -dmS pi python /home/pi/truck/main2.py &
Run Code Online (Sandbox Code Playgroud)

但我希望它通过 systemd 运行,以便在 Python 脚本崩溃时重新启动它。

我尝试在 /systemd/system/myscript.service 中创建一个服务

[Unit]
Description=myscript
After=network.target

[Service]
Type=simple
Restart=on-failure
RestartSec=3
ExecStart=/usr/bin/screen -L -dmS pi  python /home/pi/truck/main2.py

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

但它不会在 Screen 会话中运行我的脚本?

如果我得到一个正在运行的屏幕列表,它表明屏幕会话“pi”已死。

linux python gnu-screen systemd

7
推荐指数
1
解决办法
9359
查看次数

标签 统计

gnu-screen ×10

linux ×3

macos ×3

vim ×2

bash ×1

byobu ×1

clipboard ×1

colors ×1

iterm2 ×1

python ×1

remote ×1

shell-script ×1

ssh ×1

systemd ×1

terminal ×1

tmux ×1

xterm ×1