标签: gnu-screen

我怎么知道我是否在 linux“屏幕”中运行?

“屏幕”指的是如何重新连接到断开连接的 ssh 会话中提到的程序。那是一个很好的设施。

但是有一个问题我很想知道。我怎么知道我是否在“屏幕”内运行?区别在于:

  • 如果是,我知道我可以安全地关闭当前终端窗口,例如,关闭 PuTTY 窗口,而不会丢失我的 shell(Bash 等)会话。
  • 如果不是,我知道在关闭终端窗口之前我必须处理任何待处理的工作。

更好的是,我希望在 PS1 提示中显示此状态,以便我可以随时自动看到它。

linux gnu-screen

60
推荐指数
5
解决办法
2万
查看次数

什么是有用的 .screenrc 设置?

基本上就像我在下面发布的一些我自己的一样。我正在寻找程序“屏幕”的附加功能。至少看看最后一行屏幕会话底部的一个很棒的“菜单栏”。

## gyaresu's .screenrc 2008-03-25
# http://delicious.com/search?p=screenrc

# Don't display the copyright page
startup_message off

# tab-completion flash in heading bar
vbell off

# keep scrollback n lines
defscrollback 1000

# Doesn't fix scrollback problem on xterm because if you scroll back
# all you see is the other terminals history.
# termcapinfo xterm|xterms|xs|rxvt ti@:te@

# These will let you use 
bind -c selectHighs 0 select 10 #these three commands are 
bind -c selectHighs 1 select 11 #added to the …
Run Code Online (Sandbox Code Playgroud)

linux bash command-line-interface dotfiles gnu-screen

54
推荐指数
5
解决办法
11万
查看次数

腻子和屏幕和回滚缓冲区

当我在 putty 会话中使用 screen 时,我似乎无法使用 putty 的回滚缓冲区来查看刚刚从屏幕上滚动的任何内容。相反,我只是在运行屏幕之前查看 putty 会话中发生了什么。

我在这里缺少什么?我喜欢能够向后滚动,我不想使用屏幕功能查看过去的缓冲区;我鼠标上的滚轮没有钩到屏幕上,我不希望它会。

谢谢!

putty gnu-screen

44
推荐指数
2
解决办法
4万
查看次数

我如何要求 screen 表现得像一个标准的 bash shell?

刚刚了解了 linux 上的 screen 命令 - 它是天才。我喜欢它。但是,屏幕中的实际终端/提示的外观和行为与我的标准 bash 提示不同。也就是说,颜色不一样,选项卡完成似乎不起作用等。

有没有一种方法可以让 screen 表现得像一个正常的(至少,像我习惯的那样正常)bash 提示?

附加信息

我通过 ssh 从 Mac(终端)连接到无头 linux 机器(Ubuntu)。登录后,我有TERM=xterm-color,当我运行 screen 我有TERM=screen

我将尝试下面的建议,看看我是否可以先更改该$TERM值。

bash gnu-screen xterm

42
推荐指数
5
解决办法
4万
查看次数

为什么将“脚本”重定向到 /dev/null/ 允许“屏幕”在作为另一个用户使用时工作?

我被说服了一个用户来运行一个特定的长时间运行的脚本。我想使用 screen 但我收到错误消息“无法打开您的终端 '/dev/pts/4' - 请检查。”

所以我在谷歌上搜索并发现了一个论坛帖子,指示运行$ script '/dev/null/'. 我这样做了,然后我就可以筛选了。

为什么这样做?su 在做什么,该屏幕无法以 su 用户身份运行?为什么将“脚本”重定向到 /dev/null 否则会被阻止?是否使用脚本将原始用户的日志写入某处?

linux su bash gnu-screen

40
推荐指数
2
解决办法
2万
查看次数

在 PuTTY 和屏幕上使用 ctrl-箭头键

我搜索过,但在任何地方都找不到解决方案。我正在使用 Windows 中的 PuTTY 连接到运行 bash 和 screen 的各种服务器。bash 似乎可以使用 ctrl-arrow 键在命令行上逐字跳转,但在屏幕内它不起作用。不在屏幕中,ctrl-left 发送“^[OC”,ctrl-right 是“^[OD”。在屏幕中,我得到了“^[[C”和“^[[D”,这似乎只是左/右箭头键。有没有办法让屏幕在使用 PuTTY 时识别 ctrl 箭头键?(仅供参考,我不记得在 linux 中使用 gnu-terminal 而不是 PuTTY 时有这个问题)。

更新:看来 PuTTY 是问题所在,因为它没有发送使其工作所需的转义码。我现在放弃并使用 Cygwin+mintty。

bash putty gnu-screen

37
推荐指数
2
解决办法
4万
查看次数

从终端会话中恢复正在运行的脚本

所以我使用GNU Screen来管理多个正在运行的脚本/程序。多路复用和可拆卸性非常有用。

我从磁盘中删除了一个脚本,现在我在查找备份时遇到了一些麻烦。但是,其中一个终端会话在删除文件之前正在执行脚本,并且它继续正常工作。

有没有办法劫持当前正在运行脚本的终端会话来恢复这个文件的内容?

linux bash terminal gnu-screen

35
推荐指数
1
解决办法
2953
查看次数

创建屏幕并运行命令而不附加

我正在致力于自动化维护例程,该维护例程涉及启动和停止在屏幕会话中运行的脚本。我的方法是终止屏幕会话,然后重新启动它并从脚本中运行命令,使用创建屏幕和传递命令而不需要附加到屏幕的能力。

但是,我在这方面遇到了困难。我可以正确创建屏幕而无需使用screen -d -m -S screen_name. 但是,如果我运行基于以下命令的命令:

screen -S screen_name-X stuff "command 1"'echo -ne '\015''"command 2"'echo -ne '\015''

echo -ne '\015' 用反引号而不是单引号包裹。这是模拟用户按下回车键,因为我使用的命令正在移动到一个目录并执行位于那里的脚本。此命令有效,但前提是屏幕创建后已附加到屏幕。当我尝试自动化创建屏幕并在其中运行命令的过程时,我希望避免在脚本中附加和分离。我将尝试创建一个包含我需要在屏幕内执行并根据我的结果进行编辑的命令的 shell 脚本的建议。

有没有办法在一个命令中创建一个屏幕并在屏幕内运行一个命令,或者在创建之后但在执行命令之前不必附加到屏幕?

提前致谢。

**更新 - 尝试了将我需要执行的命令放在 shell 脚本中的建议后,我已经能够成功创建一个屏幕并从屏幕内执行命令,但是我得到了脚本停止运行时的行为屏幕也关闭。这不应该是一个问题,因为脚本是一个日志脚本,它应该只在系统管理员的知识或我试图开发的脚本中停止,但是最好以这样的方式设置屏幕如果脚本停止,则不会消失。是否有可能实现这种行为?**

linux gnu-screen

32
推荐指数
2
解决办法
10万
查看次数

“屏幕”的隐藏功能

由于我整天都在使用*nix 命令screen,并且找不到任何人提出这个问题,我认为应该开始。你知道练习:社区维基,每个功能一个答案,所以我们都可以投票。

gnu-screen

31
推荐指数
5
解决办法
2万
查看次数

有没有办法让“屏幕”会话在重启后存活下来?

我正在使用Screen实用程序并希望在机器重新启动时保留会话。如果不可能,您可以推荐Screen 的其他替代方案,以允许在重新启动之间保留会话。

如果重要的话,我正在使用 Ubuntu Server 10.04 (Lucid Lynx)。

我通过 Screen 打开了几个会话。当机器重新启动时,所有这些会话都丢失了,我必须再次重新打开它们。我想找到一种方法来保留这些 Screen 会话。

gnu-screen

31
推荐指数
2
解决办法
3万
查看次数

标签 统计

gnu-screen ×10

bash ×5

linux ×5

putty ×2

command-line-interface ×1

dotfiles ×1

su ×1

terminal ×1

xterm ×1