Как запустить скрипт в фоновом режиме, затем, когда условие выполнено, вернуть его на передний план BASH - PullRequest
1 голос
/ 08 октября 2019

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

Я называю этот скрипт с помощью ./runTool.sh &

currTime=$(ls -lu | grep test01 | awk '{print $8}')
currHour="${currTime:0:2}"
currMin="${currTime:3:3}"
check=0

while [ true ]
do
    timestamp=$(ls -lu | grep test01 | awk '{print $8}')
    timeHour="${timestamp:0:2}"
    timeMin="${timestamp:3:3}"

    if (( $timeHour > $currHour )) || (( $timeMin > $currMin )) || (($timeHour < $currHour ))
    then
        check=1
        set -m
        fg %1
        ./tool.sh
        break
    fi
    sleep 1
done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...