Помните приложения при выходе из LXDE

Когда я запускаю свой компьютер, я хочу, чтобы мои приложения открывались перед закрытием последнего сеанса, такого как Ubuntu, и другие дистрибутивы.

Googling, я вижу, что я могу запускать приложения, когда я запускаю сеанс, настраивая файл автозапуска, но я не хочу, чтобы всегда запускать одни и те же программы при запуске, вместо этого я хочу снова открыть программы, открытые до закрытия последнего сеанса.

Я использую Fedora spin с LXDE.

  • Черно-белый (сероватый цвет) консоль и X11
  • Как добавить Xft suppport в dwm?
  • Как получить использование процессора для каждого ядра с помощью сценария bash с использованием стандартных инструментов * nix
  • запустить x11vnc при загрузке
  • Повторное нажатие клавиши клавиатуры для печати ⸮ (знак иронии)
  • Команда quit слабее, чем windowkill?
  • определить, нажата ли клавиша из сценария
  • Каковы различия между xdotool и xautomation?
  • One Solution collect form web for “Помните приложения при выходе из LXDE”

    По-видимому, у LXDE нет надлежащего диспетчера сеансов. Однако, как вы уже упоминали, мы можем использовать файл автозапуска. Все, что нам нужно сделать, это создать динамический список программ, которые мы запускаем, прежде чем выйти из рабочего стола.

    Вот небольшой скрипт bash, который я взломал, чтобы проанализировать дочерние элементы корневого окна X11, ища приложения для добавления в файл автозапуска. Он имеет дополнительные черно-белые списки. Используйте черный список для таких вещей, как оконный менеджер или все, что вы никогда не хотите запускать. И наоборот, используйте белый список для чего-то, что вы всегда хотите запустить.

    Попробуйте запустить его в оболочке, чтобы посмотреть, как выглядит вывод, и вы можете увидеть, нужно ли добавлять что-либо в черный список.

    Вам нужно будет подключить это, чтобы как-то работать, прежде чем вы выйдете из LXDE. Возможно, добавив новую запись в меню.

    Например: scriptnamehere.bash > ~/.config/lxsession/LXDE/autostart

    Как вы можете видеть, это будет перезаписывать файл автозапуска каждый раз, когда он запускается, а значит, и необходимость в белом списке.

     #!/bin/bash WINDOWS=($(xwininfo -root -children | \ egrep \"[a-zA-Z]*\" | \ cut -d' ' -f7 | \ sed 's/":\?//g' | \ sort -du)) BLACKLIST=() WHITELIST=() for window in ${WINDOWS[@]}; do # test to see if element in array is an executable WHICH=$(which $window 2>/dev/null) # is it in the blacklist? # if so, move to the next window for app in ${BLACKLIST[@]}; do if [[ $app == $window ]]; then continue 2 fi done # otherwise add it to the autostart list if [[ -f $WHICH ]]; then APPS[${#APPS[*]}]="$window" fi done # add whitelisted apps for app in ${WHITELIST[@]}; do APPS[${#APPS[*]}]="$app" done for app in ${APPS[@]}; do printf "@%s\n" "$app" done 
    Interesting Posts
    Linux и Unix - лучшая ОС в мире.