Як вбити екран, якщо я знаю його ім'я?


15

У мене є екран під назвою 'foo', який я почав використовувати команду

screen -S foo -d -m  my_command_goes_here.

Я хочу поставити це в cron і перезапустити його щоночі, вбиваючи екран. Причиною, що я використовую екран, є те, що моя команда запускає кілька інших програм, і це забезпечить вихід всіх.

Отже ... яка команда вбити сцени 'foo'?

Дякую!


1
Які команди ви виконуєте, що вам потрібен екран, щоб їх правильно вийти?
Даррен Хол

Відповіді:


15

screen -S foo -X quit

На чоловіковій сторінці:

-X  Send the specified command to a running screen session.
...
quit    Kill all windows and terminate screen.

2

Спробуйте скористатися цим:

екран -S foo -X вбити

Я був би обережний, залежно від того, що ви працюєте, і стану, в якому він перебуває, це може не вбивати процеси, що працюють на екрані, і, можливо, спричинить нестабільність файлової системи, якщо у неї відкриті файли (я не знаю точно , я просто припускаю)


на жаль, це не спрацювало.
Poul

працював на мене, був на ubuntu. Але у мене було одне відкрите вікно на екрані. Повинні були зробити більше тестування.
Рой Ріко

2
Єдина причина, чому я не можу побачити цю роботу - це якщо у вас названо більше одного екранного сеансу foo, скористайтеся screen -listдля отримання списку поточних запущених сесій.
Даррен Хол
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.