Я пытался отправить команды на сеанс работы экрана GNU (4.00.03) в opensolaris, но не могу заставить его запускать какие-либо команды с помощью любой комбинации screen -X
Хорошо, я начал сеанс экрана с screen -S test
, а затем попытался с помощью, screen -r -X "date"
чтобы просто показать мне дату, когда я снова подключусь к нему. Но ни сообщения об ошибке, ни вывода на экран не произошло. Я пробовал с таким количеством комбинаций, что даже не помню.
Любые советы о том, как это сделать?
Причина, по которой я это делаю, заключается в том, что у меня есть программа, которая не является демоном, и я хочу запустить ее в сеансе экрана, чтобы позже я смог увидеть, что происходит.
gnu-screen
session
opensolaris
Der Hochstapler
источник
источник
Ответы:
На самом деле все довольно просто. Вы можете использовать следующее:
echo -ne '\015'
эмулирует нажатие Enterклавиши.ПРИМЕЧАНИЕ: этот «материал» является экранной командой. http://www.gnu.org/software/screen/manual/screen.html#Stuff
источник
stuff
это экранная команда для «echo -ne '\015'
", почему?screen -d -m -S sessionname; screen -S sessionname -X [...]
не делаю, ничего не будет работать, даже(screen -d -m -S sessionname&)&sleep 10;screen -S sessionname -X [...]
ничего не делает, кроме создания нового сеанса экрана, который ничего не делает. понижающее голосованиеЗвучит так, как вы хотите:
Или, может быть, вы просто хотите dtach .
источник
screen -list
показывает, что сессии не открыты.Откройте новое окно (с заголовком заголовка ) в существующем сеансе с именем session_name и выполните shell_command (с необязательными аргументами args )
источник