我想让Gnu Screen在当前目录之后动态重命名当前的Screen窗口.有没有办法让Screen做到这一点?如果它需要修补源代码,我想知道这是唯一的选择.
目前,当我在屏幕内的终端窗口中启动vi时,vi程序占用整个屏幕并覆盖那里的任何输出历史记录,然后在退出时保持在那里.因此,当稍后向后滚动我的终端输出时,vi窗口下的输出被屏蔽.
我目前在我的bashrc中使用以下别名解决这个问题...
alias vi='for i in $( seq 1 $LINES ); do echo ; done ; vi'
到目前为止,这种方法运作得很好,但它让我感觉很糟糕,我担心我会遇到一种不可预见的情况,它在某些时候会让我失望.我想知道是否有vi或屏幕的命令选项或其他更简单,更有效的方法来实现相同.
谢谢.
无论出于何种原因,zsh不喜欢我为我的$EDITOR变量设置命令行参数,但从我所知道的,它不应该是这样的.我见过人们用
export EDITOR='open -Wn'
Run Code Online (Sandbox Code Playgroud)
在他们的〜/ .zshrc文件中,但是当我尝试这样做时,我只是抱怨.
zsh: command not found: open -Wn
Run Code Online (Sandbox Code Playgroud)
有什么理由可能会发生这种情况?设置$EDITOR到'mate','vim'或'open'似乎工作得很好,但'mate -w'并'open -Wn'不起作用.
我在Mac OS X上运行zsh屏幕,我的〜/ .zshrc如下:
# -----------------------------------------------
# Screen Settings
# -----------------------------------------------
# If screen isn't already running, turn it on.
if [[ $STY == '' ]]; then
# Execute screen.
exec screen -aADRU
fi
# -----------------------------------------------
# Startup Scripts
# -----------------------------------------------
cd ~/Desktop
[[ -s "~/.rvm/scripts/rvm" ]] && source "~/.rvm/scripts/rvm"
# …Run Code Online (Sandbox Code Playgroud) 在常规的 bash 会话中,如果我输入vi,emacs -nw然后退出或挂起它们,我会毫发无损地返回到我的外壳(我输入的前几个命令仍然可见)。外壳完好无损,就好像我从未启动过emacs或vi. GNU Screen然而,当使用时,退出后我仍然看到 vi/emacs 和我正在做的任何事情,迫使我使用屏幕滚动或历史记录来回忆我在启动 emacs/vi 之前运行的最后一个命令。如何关闭这种混乱的行为?是否可以?
我正在写一个小脚本,它会向正在运行的屏幕会话发送命令.此命令会停止屏幕但不会立即停止.我需要等待它完成才能继续使用脚本的其余部分.
这就是我停止屏幕的方式:
screen -S $SCREEN_NAME -p 0 -X stuff "`printf "stop\r"`"
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
我在远程服务器上运行游戏服务器,我使用分离的屏幕实例让它运行.我现在正在创建一个脚本,可用于关闭服务器,备份所有重要文件并重新启动它,但是我在处理屏幕时遇到了一些困难.
我假设我可以通过在脚本中调用screen -r来切换到脚本中的分离屏幕(在服务器已经关闭之后).但这似乎不起作用,因为如果我从外部屏幕运行脚本,它只是在该会话中启动服务器.
screen -r
cd ~/servers/StarMade/
sh StarMade-dedicated-server-linux.sh
screen -d
Run Code Online (Sandbox Code Playgroud)
这就是我认为会做的伎俩,但事实并非如此.也许有人可以帮助我.我不是一个bash专家.事实上,这可能是我的第一个bash脚本,不包括"Hello World".谢谢.
我有一个运行过程的屏幕会话可能需要几天才能完成。服务器机房出现冷却故障,机器关闭,现在重新启动。有没有办法恢复我的屏幕缓冲区?我知道进程将被终止等。但我希望看到输出并尝试挽救一些工作。当然,那是在某处缓冲的(尽管现在可能已经清理过了?)。
将来如果我知道我想在屏幕上查看/保存输出,那么最好的方法是什么?
谢谢你的帮助。
当我开始时screen,我收到以下消息:
Screen version 4.00.03jw4 (FAU) 2-May-06
Copyright (c) 1993-2002 Juergen Weigert, Michael Schroeder
Copyright (c) 1987 Oliver Laumann
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of …Run Code Online (Sandbox Code Playgroud) 当笔记本电脑(Mac)失去 wifi 连接或网络时,我有一个问题如何让我的程序在 ssh 中运行。我通过 ssh 远程运行 python 程序到服务器,在我运行代码之前,我通过输入“屏幕”创建了一个新屏幕。然后我运行程序并按下 ctrl+A+D 来分离屏幕。一切看起来都很好,当笔记本电脑关闭时程序继续工作(在有 WIFI 的地方)。但是,当我带着笔记本电脑走到外面几分钟并重新打开笔记本电脑时,它显示“写入失败:管道损坏”并且程序停止了。我猜问题是因为笔记本电脑失去了网络连接。有没有办法解决这个问题,这样我就可以把我的笔记本电脑带到任何地方并保持我的程序运行?