Запуск screen -xR будет работать в основном так же, как при запуске screen -xr || screen.
Проблема в том, что, насколько я знаю, вы не можете передавать флаги в оболочку входа. Кроме того, наличие чего-то не-оболочки как экрана, так как ваша оболочка для входа, вероятно, нарушит такие вещи, как SFTP.
Итак, что мы будем делать, это установить bash как нашу оболочку входа. Затем мы добавим в конец .bashrc (файл bash запускается при его запуске), который запускает экран. Экран затем запустит любую оболочку, указанную в .screenrc.
Мы сделаем так, чтобы эта команда выполнялась только при специальном условии: Только если текущий запуск bash не был запущен (возможно, косвенно ) другой копией bash. Это сделает так, что если вы хотите, чтобы bash в качестве оболочки, и экран начинает bash внутри него, пользователь не получит взрыва русской куклы в bash внутри экрана внутри bash внутри экрана внутри bash до тех пор, пока компьютер
Сначала измените оболочку на / bin / bash, запустив chsh, затем введите свой пароль, затем введите /bin/bash и нажмите enter.
[d5 ] Далее отредактируйте скрытый файл .bashrc в вашей домашней папке, добавив следующее в конец:if [ ${SHLVL} -eq 1 ]; then
((SHLVL+=1)); export SHLVL
exec screen -xR
fi
Теперь отредактируйте (создайте, если он не выйдет) скрытый файл .screenrc в домашняя папка. Добавьте или отредактируйте следующие настройки:
shell /bin/zsh
startup_message off
(Конечно, если вы хотите какую-то другую оболочку, чем Zsh, идите туда и поместите ее вместо этого. Она также должна работать с bash.)