在GNU屏幕中,我想更改默认命令绑定到Alt-s(通过调整.screenrc)而不是默认的Ca,原因是我使用emacs因此GNU屏幕绑定Ca键,发送"Ca"到emacs变成乏味(如@Nils所说,发送"Ca"我应该键入"Ca a"),以及bash shell中的"Ca",我可以将转义更改为C-但是其中一些已经映射到emacs和其他组合并不像ALT-s那么容易.如果有人已经完成了ALT键映射,请告诉我.
我注意到在分离并重新连接屏幕会话后,我丢失了滚动历史记录。我已经做了一些搜索,但是每当我组合“屏幕”和“滚动”时,我就会被滚轮集成指令淹没。
无论如何,概要:
每次我在控制台工作时都使用GNU Screen.我有一个带有几个设置的自定义.screenrc文件.除此之外,我的设置在底部显示"标签":
hardstatus alwayslastline
hardstatus string "%{= g} %{= w}%-w%{=r}%n %t%{-}%+W"
Run Code Online (Sandbox Code Playgroud)
它运行良好,但我想在标签中添加一些符号,显示以前哪个选项卡处于活动状态.如何才能做到这一点?
我已经设置了这样的屏幕rc文件:
log on
shelltitle apt
logfile $HOME/configs/screen/screenlogs/apt.log
logtstamp after 120
Run Code Online (Sandbox Code Playgroud)
我是这样开始的:
screen -c ~/configs/screen/apt.rc
Run Code Online (Sandbox Code Playgroud)
但是在使用一段时间之后,apt.log文件永远不会被创建.语法看起来很完美,除非有一些我没有得到的日志文件语法
我有serveral的定制环境变量和函数在我的〜/ .bash_profile中,我想,当我开始我的屏幕会被自动调用screen -D -R
,但显然将source ~/.bash_profile
在~/.screenrc
没有解决我的问题。
在每个新屏幕上,我都必须手动获取 bash_profile。
我注意到在创建新屏幕时找不到这个文件(当你创建新屏幕时,底部的一行显示正在执行的命令,它返回找不到文件。)
我的.screenrc中有以下内容
source ~/bin/Screen/multiUserSettings
Run Code Online (Sandbox Code Playgroud)
它给了我
No such file or directory
Run Code Online (Sandbox Code Playgroud)
虽然我有它.
下面的代码告诉我那个未知的命令".".
. ~/bin/Screen/multiUserSettings
Run Code Online (Sandbox Code Playgroud)
这很奇怪,因为我可以采购.例如,在.vimrc和.zshrc中.
文件multiUserSettings
# allow the following people full control
addacl root,aledesma,mymanager,mycoworker1,mycoworker2
aclchg aledesma +rwx ?#??
# allow everyone readonly access
aclchg *,!aledesma -rwx ?#??
# setup 10,000 lines of available scrollback ? copy/paste
defscrollback 10000
# fix scrollback in putty
termcapinfo xterm* ti@:te@
Run Code Online (Sandbox Code Playgroud)
你怎么能在.screenrc中找到?