Mat*_*ner 3 gnu-screen working-directory
使用 screenrc,如何C-a c
在当前窗口的工作目录中打开一个新窗口?默认情况下,它似乎在调用原始屏幕会话时在工作目录中打开新窗口。
小智 6
默认情况下,screen
也绑定C-a C-c
以创建一个新窗口,因此您可能需要添加另一行.screenrc
来处理这种情况:
bind c stuff "screen -X chdir \$PWD;screen^M"
bind ^c stuff "screen -X chdir \$PWD;screen^M"
Run Code Online (Sandbox Code Playgroud)
关于此命令如何工作的说明:
stuff
将其参数字符串直接放入当前窗口:
命令:
stuff string
将字符串填充到
string
当前窗口的输入缓冲区中。
screen -X chdir \$PWD
告诉 screen 执行命令chdir
,该命令将其操作目录(新屏幕窗口将在其中启动)更改为$PWD
包含当前工作目录的环境变量。这是不可能.screenrc
独自完成的;因此,操作输入缓冲区stuff
是必要的。
screen
已经运行的命令screen
会创建一个新窗口,就像C-a C-c
.
^M
生成一个回车,它告诉 shell 执行现在在缓冲区中的命令。没有它,您将不得不按enter
(或C-m
,当然)。
因此,此绑定将在您执行它的窗口中留下这样的 cruft:
user@host:~/directory$ screen -X chdir $PWD;screen
user@host:~/directory$
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2538 次 |
最近记录: |