LINUX.ORG.RU

Программа, запускаемая xdg-open из скрипта, запущенного в отдельном окне xfce4-terminal, завершается при закрытии терминала

 , ,


0

1

Добрый день! Есть скрипт:

#!/bin/bash

findinhome() {
    find ~/* -iname \*"$1"\*;
}

LISTGEN="findinhome";
HANDLER="xdg-open";

until [[ $QUERY_RESULT != "" ]]; do
    read QUERY
    if [[ $QUERY == "" ]]
        then exit
    fi

    QUERY_RESULT=$($LISTGEN "$QUERY" 2>/dev/null)
done

echo "$QUERY_RESULT" | cat -n
read QUERY_CHOICE
if [[ $QUERY_CHOICE == "" ]]; then
    exit
fi
$HANDLER "$(echo "$QUERY_RESULT" | awk NR==$QUERY_CHOICE)"
read
При запуске он считывает строку, ищет по ней файлы/каталоги в хомяке, выводит их занумерованный список, открывает командой xdg-open объект с номером, введённым с клавиатуры («read» в конце - для демонстрации сути проблемы).

Если я открываю xfce4-terminal, выполняю этот скрипт, и, например, pdf-файл открывается программой atril, то после запуска atril я могу закрыть терминал и atril останется работать. Если же я выполню скрипт командой xfce4-terminal -x myscript (т.е. в новом окне xfce4-terminal), то запущенная xdg-open программа будет работать ровно до тех пор, пока не завершится выполнение скрипта и не закроется сам терминал. Без «read» в конце при таком сценарии просто ничего не запускалось, с «read» запущенная программа работает до тех пор, пока не нажму «enter» в открывшемся окне терминала. При этом, и в htop, и в xfce4-taskmanager, atril отображается не как потомок скрипта, а как потомок init'а. Atril здесь - как пример, то же и при открытии каталога thunar'ом. Пожалуйста, подскажите, в чём может быть проблема, и как правильно запускать скрипт в отдельном окне терминала, чтобы запускаемая xdg-open программа работала и после закрытия этого окна. Заранее спасибо.

★★
Ответ на: комментарий от BceM_IIpuBeT

Ни &, ни &disown в конце строки $HANDLER ... не помогают

Norong ★★
() автор топика
Ответ на: комментарий от Karthago

Добавил nohup в начало строки с $HANDLER - не помогает

Norong ★★
() автор топика
Ответ на: комментарий от xaizek

Большое тебе спасибо! Помогло :)

Norong ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.