Я откуда-то узнал, что отдельный экран может быть убит
screen -X -S [session # you want to kill] kill
откуда можно получить [сеанс #, который вы хотите убить]
screen -ls
Но это не работает. Ничего плохого? Какой правильный путь?
linux
kill
gnu-screen
Тим
источник
источник
screen -S sessionname -p 0 -X quit
Ответы:
«kill» убьет только одно окно экрана. Чтобы «убить» весь сеанс, используйте
quit
.пример
Для неактивных сеансов используйте: $ screen -wipe
источник
exit
работает, но должен быть введен в каждый экран, который был открыт.quit
даже не работаетscreen -X quit
на любом терминале прекращает все активные сессииВы можете убить отдельный сеанс, который не отвечает в сеансе экрана, выполнив следующие действия.
Введите,
screen -list
чтобы идентифицировать отдельный сеанс экрана.Примечание:
20751.Melvin_Peter_V42
это идентификатор вашей сессии.Присоединяйтесь к сеансу отсоединенного экрана
После подключения к сеансу нажмите Ctrl+, Aзатем введите
:quit
источник
quit
и:quit
привел к тому, чтоcommand not found
на моем удаленном сервере Linux (возможно, виноваты различия между версиями ОС или экрана)exit
тоже работаетСписок экранов:
Вывод:
Убить сеанс экрана:
источник
Проще убить сеанс, когда ему дается какое-то значимое имя:
источник
screen -S
и нетscreen -r
?Вы можете просто перейти к месту, где проходит сеанс экрана, и запустить:
что приводит к
И просто удали это:
В
uscreens
каталоге больше не будет26727.pts-0.devxxx
файла. Теперь, чтобы убедиться, просто введите это:screen -ls
и вы должны получить:
источник
ps aux | grep screen
нашел пид и я выдал егоkill
удалить. В зависимости от того, что у вас было на экране, у вас также могут быть временные файлы и блокировки для очистки.Должны очистить все мертвые сеансы экрана.
источник
добавьте это к вашему
~/.bashrc
:Затем используйте
cleanscreen
для очистки всего сеанса экрана.источник
screen -ls | grep Detached | cut -d. -f1 | awk '{print $1}' | xargs kill
screen -ls | tail +2 | head -2 | awk '{print $1}'| xargs -I{} screen -S {} -X quit
Для меня простой
работает. Это из сеанса экрана.
источник
:quit
Чтобы убить все отдельные сеансы экрана, включите эту функцию в ваш файл .bash_profile:
запустить его, позвони
killd
источник
источник
В качестве альтернативы, во время сеанса экрана все, что вам нужно сделать, это набрать команду exit
Это уничтожит сеанс оболочки, инициируемый экраном, что фактически завершит сеанс экрана, на котором вы находитесь.
Не нужно беспокоиться об идентификаторе сеанса экрана и т. Д.
источник