有没有办法在使用屏幕时对 Ctrl+a :multiuser 进行编码?

Is there a way to code Ctrl+a :multiuser on when using screen?

我想要 运行 一个脚本来设置屏幕会话,然后自动将其变成多用户并在我的系统上添加一个用户。

到目前为止,我有一个创建屏幕会话的脚本,但我必须手动将其变成多用户会话,然后再添加用户。

据我所知,没有实际的编码可以做到这一点,唯一的方法是使用 Ctrl+a 命令。

有谁知道可以在 bash 脚本中完成命令的方式吗?

您可以自动 运行 配置文件中的自定义命令 - 默认情况下 $HOME/.screenrc 将被加载,如果它存在,那么您可以这样做:

echo "multiuser on" >> $HOME/.screenrc

使您的默认屏幕以 :multiuser on 开头。如果你想有一个与默认配置不同的配置,只需用另一个文件名保存配置,然后使用 -c 选项启动屏幕,例如

screen -c multiuser.conf

可以不进入屏幕,使用-X。以下几行(Alice 的 运行)在屏幕中启动脚本并为用户 bob.

添加访问权限
screen -S "myscreen" -dm bash script-that-i-like.sh
screen -S "myscreen" -X multiuser on
screen -S "myscreen" -X acladd bob

Bob 然后可以使用以下方式加入:

screen -x alice/myscreen