Из сообщения об ошибке видно, что вы не создали сеанс экрана с именем "screen_name" до того, как попытались отправить команду echo
в этот сеанс. Попробуйте выполнить следующую последовательность команд.
Сначала создайте сеанс экрана с именем "screen_name". Для удобства также укажите параметры -d -m
для запуска этого сеанса в отдельном режиме, чтобы можно было сразу же приступить к выполнению большего количества команд без необходимости отсоединения от нового сеанса.
[root] screen -S screen_name -d -m
Проверьте, что новый сеанс действительно существует:
[root] screen -ls
There is a screen on:
83216.screen_name (Detached)
1 Socket in /var/folders/k4/fdf21jn93jv5n3h5b1w9mpkm0000gp/T/.screen.
Отправьте свою команду в сеанс:
[root] screen -S screen_name -X echo 'You are using screen'
Когда вы сделаете это, вы не увидите ничего интересного, потому что сеанс не привязан к терминал, но вы заметите, что вы не получаете сообщение об ошибке. Вы также не увидите результат этой команды echo
при последующем подключении к сеансу, поскольку echo
только выскакивает сообщение строки состояния в сеансе, и эта строка состояния будет отклоняться при подключении к сеансу. сеанс.
Если вы хотите сделать что-то, что будет видно при подключении, попробуйте что-то вроде:
[root] screen -S screen_name -X exec cal 2 2020
Затем, когда вы присоединитесь к сеансу, выполнив:
[root] screen -r screen_name
вы увидите результат команды cal
(распечатка календаря на февраль 2020 года) в сеансе экрана.