在 GNU screen 中,如何在所有窗口中重新加载 .bashrc?

在 GNU screen 中,如何在所有窗口中重新加载 .bashrc?

我通常在 GNU screen 中使用大约 10 个窗口,并不断自定义我的.bashrc。我希望能够使用.bashrc一行代码跨 screen 窗口进行 source。我是否可以向所有 screen 窗口广播命令,而无需分离我的会话、运行命令(在本例中为 source 配置文件)并重新连接到 screen 会话?我使用的是 Mac OS 10.8。

我相信此解决方案也适用于我想要做的事情,但我很好奇是否有更简洁的方法。

答案1

来自屏幕使用手册,您可以通过它的 -X 命令行参数与内置屏幕命令相结合,向所有屏幕窗口发送任意文本东西根据您的情况,使用以下命令

screen -X at \# stuff "source ~/.bashrc\n"

请记住,此命令相当于在每个窗口中输入“source ~/.bashrc”。如果窗口不在 bash 提示符下,而是使用 vim 编辑文件,则会产生一些意外结果。

相关内容